Antworten:
Da Sie ein ffmpeg-Tag verwendet haben, werde ich das für die Antwort verwenden.
ffmpeg -i input.wmv -s hd720 -c:v libx264 -crf 23 -c:a aac -strict -2 output.mp4
Ändern Sie die Videoqualität, indem Sie einen anderen CRF-Parameter angeben. Weitere Informationen finden Sie im x264-Codierungshandbuch .
ffmpeg -i input.avi -vf scale=-1:720 output.avi
Seit der ursprünglichen Beantwortung dieser Frage im Jahr 2012 ist etwas mehr Zeit vergangen. Neuere Versionen von FFmpeg sollten besser den FFmpeg-Videofilter „scale“ verwenden.
Ich gebe unten ein Beispiel mit diesem Filter, der auch einfach die von Ihnen angeforderte Audiospur kopiert :
ffmpeg -i input.wmv \
-c:v libx264 -preset veryslow -tune film -crf 22 -vf scale=-2:720 \
-c:a copy \
output.mp4
Die -tune film
oben angegebene Option kann weggelassen werden oder Sie können es -tune animation
je nach Art des verwendeten Videoclips versuchen .
Wenn Sie sich entschieden , dass Sie würde die Audio eine gute Wahl umcodiert werden wie die externe Bibliothek libfdk_aac verwenden würde wie folgt aussehen :
ffmpeg -i input.wmv \
-c:v libx264 -preset veryslow -tune film -crf 22 -vf scale=-2:720 \
-c:a libfdk_aac -b:a 128k \
output.mp4
Dies ist sicherlich das, was ich mit einer WMV-Datei machen würde, die ich skaliert habe. Sie werden die Ergebnisse mehr als akzeptabel finden ...
Wenn Sie alle Audiospuren, Untertitel usw. intakt halten möchten, sollten Sie Folgendes verwenden:
ffmpeg -i input.mkv \
-map 0:0 -map 0:1 -map 0:2 -map 0:3 -map 0:4 \
-vf scale=-1:720 -c:v libx264 -crf 18 -preset veryslow \
-c:a:0 copy -c:a:1 copy -c:s copy \
output.mkv
In diesem Fall enthält die Datei input.mkv zwei Audiospuren und zwei Untertitel. Sie können alle Audiospuren (oder Untertitel oder Videos usw.) einzeln oder als einzelne Entität angeben (wie für Untertitel angegeben).
Ich hoffe es hilft...
-map 0:0 -map 0:1 -map 0:2 -map 0:3 -map 0:4
angegeben angeben : Stattdessen können Sie -map 0
stattdessen einfach angeben . Dadurch werden automatisch alle Streams in Eingang 0 ausgewählt. Ähnlich wie bei Audiokopie-Codecs. Die einzigen Codec-Optionen, die Sie angeben müssen, sind -c:copy -c:v libx264
. Dies bedeutet: "Alle Stream-Codecs auf Kopieren einstellen, außer Video, das auf x264 umcodiert werden soll."
ffmpeg -i input.mkv -map 0 -vf scale=-1:720 -c:copy -c:v libx264 -crf 18 -preset veryslow output.mkv