Изменить размер в FFmpeg

1402
KLNy

У меня есть видео с разрешением 1920x1080p. Я хочу перекодировать это видео (с libx264 для видео и aac для аудио); Сначала уменьшите его до 1280x720p (с тем же соотношением сторон), используя другой битрейт видео (1900 кбит / с) и битрейт аудио (96 кбит / с). Также я хочу перейти с MKV на MP4. Я не хочу ничего менять в предыдущих настройках кодирования (только битрейт и размер видео). Я хочу использовать переменный битрейт (в видео и аудио), но я не знаю, как поместить его в FFmpeg (у меня последняя версия 3.0 - Windows 7). Чтобы получить лучшее качество, имеет ли смысл ставить значение CRF вместе с переменной битрейтом (и если да, то как я могу это сделать)? Также, если я хочу уменьшить его до 480p, как я могу это сделать и сохранить соотношение сторон без изменений?

Еще кое-что; Что такое «maxrate», «minrate» и «bufsize» и где я могу их использовать? Я думаю, что я видел, что CRF использует VBR, но в одной статье выше были использованы (для VBR), поэтому я не могу точно сказать, что использовать, чтобы получить меньший размер файла, просто уменьшив битрейт (и размер видео, если возможно).

Также я не знаю, подходит ли режим VBR для цели, которую я хочу достичь, но я прочитал, что это лучший режим.

Спасибо за ваше время!

1
Почему вы хотите перекодировать в первую очередь? LordNeckbeard 8 лет назад 0
Я хочу получить меньший размер файла KLNy 8 лет назад 0

1 ответ на вопрос

2
LordNeckbeard

Вы задавали много вопросов здесь, но я думаю, что вы обдумываете это.

Просто используйте -crfи -preset. Используйте самое высокое -crfзначение, которое все еще обеспечивает приемлемый результат, и самое медленное, к которому у -presetвас есть терпение. См. FFmpeg Wiki: Руководство по кодированию видео H.264 для получения дополнительной информации.

Что касается масштабирования, просто используйте фильтр масштаба следующим образом: -vf scale=1280:-2или -vf scale=480:-2. -2Покажет фильтр, чтобы сохранить аспект и немного настроить выход в случае необходимости, чтобы сделать его делится на 2, которая требуется от x264 для вывода с YUV 4: 2: 0 цветности подвыборки.

Большое спасибо. Это одно и то же; `-preset: v slow` и` -preset slow`? А для аудио? Какой из них я должен использовать; `-vbr` или` -b: a`? KLNy 8 лет назад 0
@KLNy `-preset` и` -preset: v` в основном одинаковы. У одного просто есть спецификатор потока, чтобы гарантировать, что `ffmpeg` знает, как применить эту опцию к видео, а не к аудио и т. Д. (Хотя я не думаю, что есть какие-либо аудиокодеры, которые используют` -preset`); если сомневаетесь, используйте `-preset: v`. Если вы используете аудиокодер libfdk_aac, используйте `-vbr`, в противном случае используйте` -b: a`. См. [FFmpeg Wiki: AAC] (https://trac.ffmpeg.org/wiki/Encode/AAC). LordNeckbeard 8 лет назад 0
Я также читал о `-q: a` для переменной в aac; Могу ли я использовать это (значения?)? KLNy 8 лет назад 0
@KLNy Да. См. [FFmpeg Wiki: AAC] (https://trac.ffmpeg.org/wiki/Encode/AAC) для получения дополнительной информации. LordNeckbeard 8 лет назад 0

Похожие вопросы