Відповіді:
Оскільки ви використовували тег ffmpeg, я буду використовувати його для відповіді.
ffmpeg -i input.wmv -s hd720 -c:v libx264 -crf 23 -c:a aac -strict -2 output.mp4
Змініть якість відео, вказавши інший параметр CRF. Додаткову інформацію див. У посібнику з кодування x264 .
ffmpeg -i input.avi -vf scale=-1:720 output.avi
Час трохи змінився з моменту отримання оригіналу відповіді на це запитання у 2012 році. Більш нових версіях FFmpeg було б краще використовувати фільтр "шкали" FFmpeg.
Я наводжу приклад нижче, використовуючи цей фільтр, який також просто копіює аудіозапис, як ви просили:
ffmpeg -i input.wmv \
-c:v libx264 -preset veryslow -tune film -crf 22 -vf scale=-2:720 \
-c:a copy \
output.mp4
Наведений -tune film
вище варіант можна опустити або спробувати -tune animation
залежно від типу відеокліпу, який ви використовуєте.
Якщо ви вирішили , що ви б хотіли , щоб перекодувати вибір хорошого звуку буде використовувати зовнішню бібліотеку libfdk_aac наступним чином :
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
Це звичайно те, що я б робив із файлом wmv, який я масштабував, результати ви знайдете більш ніж прийнятні ...
Якщо ви хочете зберегти недоторканими всі аудіозаписи, субтитри тощо, вам слід скористатися чимось таким:
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
У цьому випадку файл input.mkv має дві звукові доріжки та два субтитри. Ви можете вказати всі аудіозаписи (або субтитри, або відео тощо) по одному, або як одне ціле (як я вказав для субтитрів).
Сподіваюся, це допомагає ...
-map 0:0 -map 0:1 -map 0:2 -map 0:3 -map 0:4
Натомість ви можете просто вказати -map 0
натомість. Це автоматично вибере всі потоки на вході 0. аналогічно звуковим копіям кодеків. Єдині параметри кодека, які потрібно вказати, - це -c:copy -c:v libx264
. Це означає: "встановити всі потокові кодеки для копіювання, крім відео, яке повинно перекодувати до x264."
ffmpeg -i input.mkv -map 0 -vf scale=-1:720 -c:copy -c:v libx264 -crf 18 -preset veryslow output.mkv