Ich frage mich, ob es möglich ist, Videodateien mit dem cat
Befehl zusammenzuführen. Ich meine, wird die resultierende Datei nahtlos abgespielt?
Ich frage mich, ob es möglich ist, Videodateien mit dem cat
Befehl zusammenzuführen. Ich meine, wird die resultierende Datei nahtlos abgespielt?
Antworten:
Ja, es ist möglich. Es werden jedoch nicht alle Formate unterstützt.
Einige Multimedia-Container (MPEG-1, MPEG-2 PS, DV) ermöglichen das Zusammenfügen von Videodateien durch bloße Verkettung.
Beim Konvertieren in RAW-Formate besteht außerdem eine hohe Wahrscheinlichkeit, dass die Dateien verkettet werden können.
ffmpeg -i input1.avi -qscale:v 1 intermediate1.mpg
ffmpeg -i input2.avi -qscale:v 1 intermediate2.mpg
cat intermediate1.mpg intermediate2.mpg > intermediate_all.mpg
ffmpeg -i intermediate_all.mpg -qscale:v 2 output.avi
Aber mit cat
auf diese Weise erstellten Zwischendateien, die nicht notwendig sind. Dies ist ein besserer Ansatz, um das Erstellen dieser Zwischendateien zu vermeiden:
ffmpeg -i input1.avi -qscale:v 1 intermediate1.mpg
ffmpeg -i input2.avi -qscale:v 1 intermediate2.mpg
ffmpeg -i concat:"intermediate1.mpg|intermediate2.mpg" -c copy intermediate_all.mpg
ffmpeg -i intermediate_all.mpg -qscale:v 2 output.avi
Es gibt zwei Arten von Mediendateien
streambar
nicht streambar
Der Hauptunterschied besteht darin, wie die beiden Dateiformate Metainformationen einbetten. Bei nicht-streambaren Formaten werden die Metainformationen ("Header") an einer bestimmten Position in der Datei gespeichert, normalerweise am Anfang, manchmal am Ende. Sie können solche Dateien nicht einfach verketten, da sich die Metainformationen aus einer der Dateidateien an einem nicht standardmäßigen Speicherort befinden und daher ignoriert werden.
OTOH, streamable Formate müssen in der Lage sein, Listener zu handhaben, die die Datei "irgendwo in der Mitte" abspielen. Aus diesem Grund senden diese Formate die Metainformationen immer wieder neu und ermöglichen sogar die Aktualisierung innerhalb der Datei / des Streams. Diese Formate können einfach verkettet werden.
Nein, das ist nicht möglich, da jede Videodatei einen Header hat. Zum Zusammenführen von Videos benötigen Sie ein Tool (wie zum Beispiel ffmpeg oder mencoder ).