2

У меня эта команда работает с кодеком h264.

ffmpeg -i a.mp4 -c:v libx264 -maxrate 800k -bufsize 800k -ar 48k -ab 192k b.mp4

Однако с помощью libx265 вместо libx264 в этой команде вывод заканчивается точно так же, как это было бы без параметров maxrate и bufsize. Как будто h265 игнорирует эти параметры. Так ли это, или есть другая причина, по которой это может не сработать?

ОБНОВИТЬ:

Я изменил libx265 на hevc_nvenc. Теперь кажется, что он обрабатывает maxrate и bufsize правильно, но не b:v. Напротив, libx265 может обрабатывать b:v, но не вышеупомянутый maxrate и bufsize!

ОБНОВЛЕНИЕ 2: Оболочка FFmpeg x265 была обновлена, и теперь она, наконец, может получить размер буфера libavcodec и его максимальную скорость.

1 ответ1

2

Оболочка FFmpeg x265 не определяет размер и скорость загрузки libavcodec, поэтому сейчас вы можете передать ее в частном порядке.

ffmpeg -i a.mp4 -c:v libx265 -x265-params "vbv-maxrate=800:vbv-bufsize=800" ...

Единицы в килобитах, в отличие от libavcodec, которые в битах.

Я обновлю этот пост, как только обертка подберет общие параметры.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .