So verketten Sie zwei Videos w. ffmpeg - dokumentierter Code funktioniert nicht

8

Ich versuche zwei Videos mit ffmpeg zu verketten. Nichts Außergewöhnliches; Ich möchte nur ein Video, das aus Video A unmittelbar gefolgt von Video B besteht.

Ich habe den Code von How ausprobiert um Mediendateien zu verketten (beitreten, zusammenführen) auf einer neu erstellten und ansonsten funktionierenden Installation von ffmpeg 1.2.1 auf Fedora 17, aber die folgende Fehlermeldung erscheint:

%Vor%

Ein paar andere Dinge zu beachten:

  • Die beiden Videos, mit denen ich arbeite, wurden mit derselben Kamera aufgenommen. Es sollte also keine Probleme mit dem Seitenverhältnis oder anderen blutigen Videodetails geben.
  • Ich kann andere Dinge mit meiner ffmpeg-Installation machen, wie eines dieser Videos von .mov in .mp4 umwandeln (ja, ich musste es mit faac neu kompilieren ...), was für den ffmpeg zu bürgen scheint und das Video.
  • Ich habe versucht, den obigen Aufruf zu ändern, um am Ende eine .mov-Datei zu erzeugen, aber ich bekomme den gleichen Fehler wie zuvor.
  • Ich habe auf der obigen Anfrage einige dämliche Hacking-Tricks ausprobiert, wie das Verketten von zwei Kopien desselben Videos, sowie einige andere Aufrufe von anderen Orten im Internet, die filter_complex beinhalten. Sogar auf denen, die als funktionierend zitiert wurden, bekomme ich die Meldung "Matches no Streams".
Jim Miller 02.07.2013, 00:46
quelle

2 Antworten

14

Geben Sie für jeden Eingang zuerst den Videostream und dann den Audiostream (s) an. Da Ihr Videostream für jede Ihrer Eingaben Stream 1 ist und Ihr Audiostream Stream 0 ist, wäre das:

%Vor%

Oder besser noch, der folgende Befehl sollte unabhängig von der Reihenfolge der ursprünglichen Streams funktionieren und den ersten Audio-Stream aufnehmen, wenn es mehr als eins gibt:

%Vor%     
mark4o 02.07.2013, 15:27
quelle
3

Concat Demuxer

Der concat demuxer wurde zu ffmpeg 1.1 hinzugefügt. Wenn Ihre Version von ffmpeg zu alt ist, erhalten Sie die neueste statische Binärdatei von hier: Ссылка

Anweisungen

Erstellen Sie eine Datei mylist.txt mit allen Dateien, die in der folgenden Form verkettet werden sollen (Zeilen, die mit einem Bindestrich beginnen, werden ignoriert):

%Vor%

Beachten Sie, dass dies entweder relative oder absolute Pfade sein können. Dann können Sie Ihre Dateien mit verschlüsseln:

%Vor%

Es ist möglich, diese Listendatei mit einer bash for loop oder mit printf zu erzeugen. Einer der folgenden Schritte würde eine Listendatei erzeugen, die alle * .wav im Arbeitsverzeichnis enthält:

%Vor%

Quelle: ffmpeg wiki

    
erik 02.03.2014 01:34
quelle

Tags und Links