AVC Streams von VFR nach CFR umwandeln?

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • AVC Streams von VFR nach CFR umwandeln?

    Anzeige
    Ich schreibe diesen Thread jetzt extra bei Fragen und Antworten, da ich diese Frage auch gern selbst beantworten möchte.

    Zur Zeit fehlen mir aber Versuchsmaterialien die mit VFR aufgenommen worden sind.

    Das Ziel soll jetzt werden eine geeignete Routine zu entwickeln (Und daraus eventuell auch eine Software die das dann macht) die VFR Material korrekt in CFR umwandelt.

    Für diese Tests brauche ich aber VFR Aufnahmen. Leider ist es so das mein Rechner nicht der neuste ist und ich auch so schnell kein neuen leisten kann.

    Daher funktionieren bei mir nicht mal Shadow Play, da meine Grafikkarte nicht mehr in dessen Schema mehr passt. Auch sonst habe ich nach Alternativen gesucht die VFR aufnehmen. Nur leider laufen diese Aufnahemprogramme bei mir nicht mal xD Entweder zu alte Grafikkarte wie bei Shadow Play oder keine DX11 Unterstützung, da ich ledeglich nur DX10 drin habe.

    Die Frage an euch un ie Bitte ist nun ob sich jemand finden würde eine 30 Minütige Aufnahme oder mehr zu machen in VFR via Shadowplay, Game Capture Karten/Boxen oder sonstige Programme die VFR aufnehmen zu machen und diese ohne Bearbeitung auf einen hoster hochzuladen.

    Die Aufnahmen sollten dabei AVC Streams sein. Sprich Dateiendung MP4 oder TS oder M2TS.

    Weil ich denke mal das viele mit diesen Sachen Asynchronitätsprobleme haben, da VFR einfach von Anwendungen auch immer falsch geladen werden.

    Die Aufnahme sollte nicht nur Video enthalten, sondern auch den entsprechenden Audioteil zum Video. Sonst macht das 0 Sinn, da man sich an sonst nix orientieren kann.


    Ich habe schon mehrere Versuche gestartet gehabt VFR in CFR umzuwandeln. Leider variieren auch dort immer die Möglichkeiten.

    Daher wäre es Hilfreich wenn ihr mich da unterstützen wollt bei diesem Vorhaben beim Upload dahinterzuschreiben mit welchem Programm und Gerät eventuell aufgenommen wurde.


    Es wäre schön wenn sich an diesem Vorhaben und dieser Bitte mehrere beteiligen würden damit man auch sehr unterschiedliche Quellen zur Verfügung hat. Nicht das es bei einer Quelle geht und bei der nächsten nicht mehr.


    Damit wir alle endlich mal dieses große Asynchronitätsproblem weitesgehend beseitigen können.

    Die Programme und Plugins die dazu dann verwendet werden gehören dann zu AVISynth und MeGUI. Sprich es wird dann ein kostenloses Verfahren gesucht damit.

    Über Ideen oder Vorschläge + aktuelle Lösungenwege kann man sich ja dann hier im Thread austauschen.


    Ich habe bereits auch schon 2 Lösungsansätze, die ich aber wie gesagt an längeren Aufnahmen gerne testen würde.


    Ich hoffe auf eure Unterstützung dann. ^^ Denn ich denke gerade die Konsoleros unter euch sind an sowas interessiert dann.

    Einfach damit wir nicht immer sagen müssen dann das VFR total schlecht sei. VFR ist eigentlich an sich sogar besser. Nur können die meisten Anwendungen damit gar nix anfangen richtig, weil alle meist auf CFR basieren. Daher soll jetzt damit auch ne Lösung her.

    In Angesicht dessen werde ich auch im Gleitz Forum mit einigen Experten noch reden um dann zusammen halt auf eine richtige Lösung zu kommen die alle zufriedenstellen soll.

    Ich kann erst mal nix versprechen was daraus nun wird, das müssen dann die Tests, Methoden und Ideen entscheiden inwieweit das ganze dann gehen wird und wie zuverlässig es wird.
  • Folgendes hat hier schon ein paar Stunden ShadowPlay-Aufnahmen (synchron) umgewandelt, mehr nutze ich nicht:

    Quellcode

    1. LoadPlugin("ffms2.dll")
    2. audio = ffaudiosource("Desktop 07.13.2014 - 01.27.09.07.mp4")
    3. video = ffvideosource("Desktop 07.13.2014 - 01.27.09.07.mp4", fpsnum=30000, fpsden=1000).converttoyv12()
    4. audiodub(video, audio)
    ——YouTube————————————————————————————————————————————
    — Endlos-Projekte: Minecraft (SinglePlayer), Craft The World, Banished, Besiege, Sims4
    — ..Abgeschlossen: Leisure Suit Larry 6+7, Dishonored, Surface 2+3, Mirrors Edge, uvm
    — . Kurz- Projekte: The Tower, Fighting Is Magic, Euro Truck Simulator 2, uvm
    — ......Retro-Ecke: Day Of The Tentacle, Flight Of The Amazon Queen, NFS: HP2, uvm
    ————————————————————————————————————————————TbMzockt.de—
  • Ja. Das funktioniert auch bei meinem 4 Minuten Testvideo hier.

    Ich hatte aber schon Threads gehabt wo das nicht ging. Wo nach 28min eine Asynchronität dann drin war langsam. Daher will ich ja auch eine Anwendung schreiben wo man alle Verfahren zusammen fasst und speichern kann.

    Es gibt nämlich auch noch ein Verfahren da demuxt man vorher mit TSMuxer und muxt es dann in MKV. AVISynth würde das dann als doppelte FPS in CRF einlesen. Auch korrekt.

    Nur inwieweit sich das ganze von jeweiligen Aufnahmensoftwares unterscheidet gilt es jetzt mal endgültig dingfest zu machen.


    PS an @TbMzockt: Das ConvertToYV12 ist recht überflüssig oder nicht? Weil FFMS2 ließt ja korrekt den Farbraum ein. Oder nimmste in YUY2 auf?
  • Meine Aufnahmen werden nach ca. 48min automatisch gesplittet weil die 4GB Grenze erreicht ist (der Win7 MP4-Muxer kann nur bis 4GB MP4), daher kann ich nur für meine maximal 48 Minuten sprechen und die sind bisher immer bis zum letzten Frame synchron gewesen.

    Wobei gerade ein Spiel in CBR umgewandelt wird welches 1h52 auf der Uhr hat weil es besser komprimierbar war, da kann ich ja mal schauen wie es am Ende aussieht... dauert aber noch 1-2 Tage weil meine Pipeline hier gerade sehr voll ist was Aufnahmen umkodieren angeht...

    .

    Sagaras schrieb:

    PS an @TbMzockt: Das ConvertToYV12 ist recht überflüssig oder nicht?

    Ich habs noch von einem anderen Dekoder drin der mir bei jedem Video immer RGB geliefert hat, kann natürlich raus wenn der Farbraum schon passend geliefert wird.
    ——YouTube————————————————————————————————————————————
    — Endlos-Projekte: Minecraft (SinglePlayer), Craft The World, Banished, Besiege, Sims4
    — ..Abgeschlossen: Leisure Suit Larry 6+7, Dishonored, Surface 2+3, Mirrors Edge, uvm
    — . Kurz- Projekte: The Tower, Fighting Is Magic, Euro Truck Simulator 2, uvm
    — ......Retro-Ecke: Day Of The Tentacle, Flight Of The Amazon Queen, NFS: HP2, uvm
    ————————————————————————————————————————————TbMzockt.de—
  • Anzeige
    Also der Weg ist wie gesagt der einfachste und wäre auch einer meiner Vorschläge schon gewesen zur Umsetzung.

    Nur müsste man es durchprobieren bei unterschiedlichen Sachen.

    Beim Entwicklungs SSM hab ich aber diesen Weg bereits eingebaut und sieht so aus:



    Damit wird das Video mit der ersten Methode (Sprich über FFMS2) von VFR in CFR gewandelt und sogar mit TDeint deinterlaced.
    Das Skript kann man dann abspeichern und im SSM Hauptfenster dann als Quelle laden und bearbeiten.

    Wäre erst einmal ein Schritt. Gibt ja aber auch noch DSS2 und halt die Methode es erst mit TSMuxer zu demuxen und dann mit MKVMerge es als MKV zu muxen um diese Datei mit Timecodelist laden zu können via FFMS2 (Da werden die FPS dann (so bei mein 4min Testvideo) doppelt so groß, aber die Länge stimmt dann.)

    Ich möchte aber ungern den Weg zu kompliziert machen und es halt so einfach wie möglich halten. Daher wären halt längere VFR Aufnahmen von über 30min am Stück in einem File sehr interessant. Weil wenn nach 4GB gesplittet wird jedesmal, ist das unsennig, weil bei 6 oder 7min Spieldauer des VFR Videos wird es nur unauffällig asynchron werden. Sprich das wird sich nicht mal richtig zeigen.

    Daher auch die langen Aufnahmen. Das ist wichtig bei den Testläufen.
  • Razerlikes schrieb:

    Also möchtest du eine normale Shadowplay Aufnahme á 30 Minuten mit in-game Sound? Kann ich morgen mal machen.


    z.B. ja. Halt so wie es aufgenommen worden ist mit IngameSound verzippt auf einen Hoster laden dann. Sprich unberührt lassen, damit die Tests mit den VFRtoCFR Verfahren reproduziert werden kann für ein anderen User. ^^
  • Du bräuchtest eine Quelle die Asynchron wird wenn man das 08/15 Verfahren drauf anwendet, der Unterschied zwischen beiden Methoden ist eigtl. nur das ffms2 den Frame anhand seines Timecodes raussucht und dabei eben "mittelt", dss2 mit Index (und entsprechendem AviSynth-Script) nimmt jedoch eine andere Methode um einen passenden Frame zu finden, beide Methoden können aber nichts daran ändern wenn das VFR-Video eh schon (weil es kürzer ist als das Audio) asynchron wird...

    Wenn die MP4 im Mediaplayer synchron wiedergegeben wird, dann wird sie auch mit der ffms2-Methode synchron bleiben, denn das ganze nutzt DirectShow (plus einem eigens erstellten Index für Frame-Genauigkeit), spielt also schon der Mediaplayer das falsch ab kann auch ffms2 daran nichts drehen.

    Und so wie ich das im Doom9-Forum verstanden habe macht die dss2-Methode nur die Auswahl der Keyframes anders, habe allerdings nicht genau verstanden wieso da 60fps geliefert werden wovon dann 30 weggeworfen werden...
    ——YouTube————————————————————————————————————————————
    — Endlos-Projekte: Minecraft (SinglePlayer), Craft The World, Banished, Besiege, Sims4
    — ..Abgeschlossen: Leisure Suit Larry 6+7, Dishonored, Surface 2+3, Mirrors Edge, uvm
    — . Kurz- Projekte: The Tower, Fighting Is Magic, Euro Truck Simulator 2, uvm
    — ......Retro-Ecke: Day Of The Tentacle, Flight Of The Amazon Queen, NFS: HP2, uvm
    ————————————————————————————————————————————TbMzockt.de—
  • TbMzockt schrieb:

    Und so wie ich das im Doom9-Forum verstanden habe macht die dss2-Methode nur die Auswahl der Keyframes anders, habe allerdings nicht genau verstanden wieso da 60fps geliefert werden wovon dann 30 weggeworfen werden...


    Habe ich doch auch. VFR FPS Zahlen bestehen oftmals auch aus dem doppelten FPS Wert. Nur das diese springen. Wenn man die FPS so schon beim einlesen erhöht kann man das CFR mäßig wieder runterrechnen lassen. Daher wird wieder runtergeswitcht.

    Kann ich bei meinem Testvideo auch machen.

    Das Teil hat 25 FPS VFR. Demuxe ich es mit TSMuxer werden daraus 50 FPS CFR schon. die 264 oder h264 Datei kann man dann in MKV muxen und via FFMS2 in AVISynth laden. Es wird exakt als 50 FPS erkannt dann, obwohl es ein 25 FPS Video ist.

    Aber auch das funktioniert nicht immer. So die Erfahrung.