Audio trotz VFRtoCFR asynchron

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

  • Audio trotz VFRtoCFR asynchron

    Anzeige
    Hi,

    ich habe mir Sagaras Skript zur VFRtoCFR konvertierung hier angesehen und damit meine VFR Videos bearbeitet. Das hat auch ganz gut funktioniert. Allerdings wollte ich jetzt aus einem anderen Video ein kleines Stück für ein Outro hinzufügen, das aber höllisch asynchron ist und ich weiß nicht warum.

    Hier der Code den ich verwende:

    Quellcode

    1. #Filter Laden
    2. LoadPlugin("C:\Users\Klaus\Videos\LPs\MeGUI_2418_x86\tools\filter\vfrtocfr.dll")
    3. LoadPlugin("C:\Users\Klaus\Videos\LPs\MeGUI_2418_x86\tools\ffms\ffms2.dll")
    4. #Outro Laden
    5. outrovideo = "C:\Users\Klaus\Videos\LPs\SP_rohdaten\alteRohdaten\aufnahmeEp23.track_1.mkv"
    6. outroaudio = "C:\Users\Klaus\Videos\LPs\SP_rohdaten\alteRohdaten\aufnahmeEp23.wav"
    7. outrocode = "C:\Users\Klaus\Videos\LPs\SP_rohdaten\alteRohdaten\23TimeCode_Track1.txt"
    8. #Laden der Rohdaten
    9. __outro = FFVideoSource(outrovideo, threads=1)
    10. __outroaudio = WAVSource(outroaudio)
    11. __outro = VFRtoCFR(__outro,outrocode,60,1)
    12. __outro = AudioDub(__outro, __outroaudio).ChangeFPS(30,1)
    13. outstart = 15824
    14. outend = 17984
    15. __outro = __outro.trim(outstart,outend)
    16. __outro
    Alles anzeigen


    Danach mach ich noch einen Resize und ein Overlay über ein Hintergrundbild, Audiodubbe das ganze noch mal und hänge es ans Video. Allerdings ist nach das outro schon vor dem Resize nicht mehr synchron. Sieht irgendjemand den Grund dafür in meinem Code?
    Ich habe es analog für das Main Video gemacht (welches mit dem selben Aufnahmeprogramm aufgenommen wurde unter selben Einstellungen) und dort funktioniert es mit dem Sound.
  • Warum werden denn VFR Aufnahmen genutzt?
    Macht doch wenig Sinn, oder?

    Oder machst du externe Konsolen Aufnahmen?

    Und wehe ich muss was von Shadowplay lesen xD

    VFRtoCFR darf nur angewand werden wenn es sich tatsächlich um ein VFR Video handelt. (Mediainfo des Originals zeigen lassen)

    Mit dem TSMuxer das Original VFR Video demuxen und mit MKVMerge muxen lassen. Danach den Vorgang den du hier machst.

    Dabei müsste die MKV die doppelte FPS besitzen. Erst dann kann mit VFRtoCFR wieder in die UrsprungsFPS geswitcht werden.

    Verwende am besten die Audiospur direkt aus dem VFR Video. Nicht das du durch blöde WAV Erstellung irgendwo ein paar ms im Ton Dazugewinnst. Das ist ja nicht gewollt.

    Mit FFAudioSource("Quelle.mp4", track=x) kannste die Audiospur laden im Track x. Also für x=1 und er läd aus Track 1 die erste Audiospur.

    Wenn du alles so gemacht hast und es immernoch Asynchron dabei ist, dann wird das Video wohl nicht in CFR einfach umgewandelt werden können.

    Aber es wäre Nice von dir erst einmal die Mediainfo des Ursprungsvideo mit der VFR zu posten.

    Ich hoffe für dich das es keine Windowsaufnahmen sind, sondern externe Konsolenaufnahmen ;D Denn fals doch, dann müssten dich einige Leute treten, da es für Windows Aufnahmesoftwares gibt die in CFR aufnehmen. Einzig Shadowplay bis jetzt das das Teil in VFR aufnimmt. Warum auch immer. Sollte man nicht nehmen.
  • *hust hust tuschel* wurde mit ShadowPlay aufgenommen^^ bitte nicht hauen :D bin doch noch Neuling^^

    ok, hab das mit dem FFAudiSource gemacht und noch mal die einzelnen Schritte, ist aber immer noch asynchron. Allerdings hat meine .mkv der Originaldatei immer noch 60FPS und keine 120 wie du meintest. Muss ich dafür irgendeine besondere Einstellung machen?

    Hier die MediaInfos zu beiden Files:
    Original
    Tonlose MKV
  • Du hast doch dein Video aufgenommen. Diese aufgenommene Aufnahmedatei ist das Quellvideo das in VFR vorliegen müsste.

    Um die FPS wieder strukturiert anzuordnen für CFR brauchst du ein Programm was das tut. Zum Beispiel der TSMuxer.

    Im TSMuxer lädst du die VFR Aufnahme und demuxt das ganze.

    Er sollte dir dann eine *.264 oder *.h264 Datei erzeugen mitunter.

    Diese Datei ist eine rohe Binärdatei des Videos die noch keinen festen Container besitzt. Wenn du diese in MKVMerge muxen tust in ein MKV Container und dort die Mediainfo anzeigen lässt, sollte diese ca. die doppelte FPS in etwa haben im gegenzug zur aufgenommenen Datei.

    Die, die du mit MKVMerge gemuxt hast wird dann für das VFRtoCFR genommen.

    Haste es so gemacht?
  • Dann lade dir die Audiospur aus der Aufnahme direkt raus. Nicht das du durch die WAV Erzeugung irgendwo blöderweise was duzubekommst.

    Am besten mit FFAudioSource.

    Machste es so:

    Quellcode

    1. #Filter Laden
    2. LoadPlugin("C:\Users\Klaus\Videos\LPs\MeGUI_2418_x86\tools\filter\vfrtocfr.dll")
    3. LoadPlugin("C:\Users\Klaus\Videos\LPs\MeGUI_2418_x86\tools\ffms\ffms2.dll")
    4. #Outro Laden
    5. Quellvideo = "C:\blabla\Shadowplayaufnahme.mp4"
    6. outrovideo = "C:\Users\Klaus\Videos\LPs\SP_rohdaten\alteRohdaten\aufnahmeEp23.track_1.mkv"
    7. outrocode = "C:\Users\Klaus\Videos\LPs\SP_rohdaten\alteRohdaten\23TimeCode_Track1.txt"
    8. #Laden der Rohdaten
    9. __outro = FFVideoSource(outrovideo, threads=1)
    10. __outroaudio = FFAudioSource(outrovideo, track=1)
    11. VFRtoCFR(__outro,outrocode,60,1)
    12. Audiodub(Quellvideo).Info()
    Alles anzeigen


    Den Pfad für die Shadowplayaufnahme bitte anpassen und dann das ganze in MeGUI laden. MeGUI sollte dir dann ein kleines Infofeld links oben ausgeben. Diese Lesbar hier posten.

    Bei Ladefehler etc. noch mal melden und Fehlermeldung posten.

    Wenn du die Info gepostet hast, machst du eine Info von der Shadowplayaufnahme.

    Quellcode

    1. LoadPlugin("C:\Users\Klaus\Videos\LPs\MeGUI_2418_x86\tools\ffms\ffms2.dll")
    2. Quellvideo = "C:\blabla\Shadowplayaufnahme.mp4"
    3. AudioDub(FFVideoSource(Quellvideo, threads=1), FFAudioSource(Quellvideo, track=1))
    4. Info()


    Auch hier wieder die Info posten dann.

    Mit den Infos in AVISynth erkennt man dann den Unterschied zwischen Videolänge und Audiolänge.


    Eventuell muss nur noch ein wenig verschoben werden, das vllt eine kleine Duration drin ist in ms zwischen Audio und Video.

    Es kann aber auch sein, das das ganze VFRtoCRF Verfahren bei deiner Aufnahme nicht klappt.


    Edit:
    Noch besser wäre es wenn du das aufgenommene Shadowplay Video (Ohne das du da was dran gemacht hast) auf einen Hoster hochladen tust oder mir via Skype schickst, sodass ich mir das dann mal anschaue ob man das in CFR richtig wandeln kann damit es Synchron ist.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Sagaras ()