Was ist falsch an meinem ffmpeg-Befehl?

688
Captain Bengali

Ich verwende diesen Befehl, um zu versuchen, eine Videodatei zu transcodieren (Video h264 hoch 10 bis h264 hoch und den Rest kopieren), aber es gibt mir immer den Fehler Unable to find a suitable output format for 'copy' copy: Invalid argument

Der Befehl, den ich benutze, ist ffmpeg -i $1 -c:v libx264 -crf 20 -profile:high -c:a copy -c:s copy -c:t copy $2

Was stimmt nicht mit diesem Befehl?

0
Versuchen Sie, die Option "-profile" zu löschen, und verwenden Sie die Option "-f" (z. B. "-f mp4") nach "-c: t copy" und unmittelbar vor "$ 2". Anaksunaman vor 6 Jahren 0

1 Antwort auf die Frage

1
Gyan

Ihr Befehl enthält -profile:highden von FFmpeg als Optionsnamen analysierten Befehl . Somit -c:awird als Wert analysiert. Das nächste copy, jetzt als ungepaart angesehen, wird also als Ausgabename behandelt. Da es keine Erweiterung hat, kann FFmpeg das Ausgabedateiformat nicht erkennen.

Die korrekte Syntax für das Profil lautet -profile:v high

Also verwenden

ffmpeg -i $1 -c:v libx264 -crf 20 -profile:v high -c:a copy -c:s copy -c:t copy $2 
können Sie einen Blick auf meine Frage werfen: https://superuser.com/questions/1283764/ffmpeg-zoompan-filter-duration-option-not-working Muhammad Umer vor 6 Jahren 0