Перейти к содержимому

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

1

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

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

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

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

1 531 просмотр
KLNy спросил 10 лет назад
K 18

1 ответ

2
Принятый ответ

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

Просто используйте -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 · 10 лет назад · 0

@KLNy -preset и -preset: v в основном одинаковы. У одного просто есть спецификатор потока, чтобы гарантировать, что ffmpeg знает, как применить эту опцию к видео, а не к аудио и т. Д. (Хотя я не думаю, что есть какие-либо аудиокодеры, которые используют -preset); если сомневаетесь, используйте -preset: v. Если вы используете аудиокодер libfdk_aac, используйте -vbr, в противном случае используйте -b: a. См. FFmpeg Wiki: AAC.

LordNeckbeard · 10 лет назад · 0

Я также читал о -q: a для переменной в aac; Могу ли я использовать это (значения?)?

KLNy · 10 лет назад · 0

@KLNy Да. См. FFmpeg Wiki: AAC для получения дополнительной информации.

LordNeckbeard · 10 лет назад · 0
LordNeckbeard ответил 10 лет назад
L 24 701