Изменить размер в FFmpeg
У меня есть видео, которое имеет разрешение 1920x1080p. Я хочу перекодировать это видео (с libx264 для видео и aac для аудио); Сначала уменьшите его до 1280x720p (с тем же соотношением сторон), используя другой битрейт видео (1900 кбит / с) и битрейт аудио (96 кбит / с). Также я хочу перейти с MKV на MP4. Я не хочу ничего менять в предыдущих настройках кодирования (только битрейт и размер видео). Я хочу использовать переменный битрейт (в видео и аудио), но я не знаю, как поместить его в FFmpeg (у меня последняя версия 3.0- Windows 7). Чтобы получить лучшее качество, имеет ли смысл ставить значение CRF вместе с переменной битрейтом (и если да, то как я могу это сделать)? Также, если я хочу уменьшить его до 480p, как я могу это сделать и сохранить соотношение сторон без изменений?
Еще кое-что; Что такое "maxrate", "minrate" и "bufsize" и где я могу их использовать? Я думаю, что я видел, что CRF использует VBR, но в одной статье выше были использованы (для VBR), поэтому я не могу точно сказать, что использовать, чтобы получить меньший размер файла, просто уменьшив битрейт (и размер видео, если возможно).
Также я не знаю, подходит ли режим VBR для цели, которую я хочу достичь, но я прочитал, что это лучший режим.
Спасибо за ваше время!
1 ответ
Вы задавали много вопросов здесь, но я думаю, что вы обдумываете это.
Просто используйте -crf
а также -preset
, Используйте самый высокий -crf
значение, которое все еще обеспечивает приемлемый выход и самый медленный -preset
у вас есть терпение для. См. FFmpeg Wiki: Руководство по кодированию видео H.264 для получения дополнительной информации.
Что касается масштабирования, просто используйте фильтр масштаба следующим образом: -vf scale=1280:-2
или же -vf scale=480:-2
, -2
скажет фильтру сохранить аспект и немного откорректировать выходной сигнал, если необходимо, чтобы он делился на 2, что требуется x264 для вывода с подвыборкой цветности YUV 4:2:0.