Как использовать ffmpeg для кодирования аудиофайлов ogg?

Я хочу преобразовать следующее простое oggenc команда использовать ffmpeg вместо:

oggenc -b 8 input.wav -o out.ogg

Из документа обертки ffmpeg libvorbis говорится:

Следующие параметры поддерживаются оболочкой libvorbis. Oggenc-эквивалент параметров указан в скобках.

  b (-b)

Установите битрейт, выраженный в битах / с для ABR. oggenc -b выражается в килобитах / с.

Но я просто не знаю, как применить это к ffmpeg, Я пробовал,

ffmpeg -i input.aac -c:a libvorbis -b 8 out.ogg
ffmpeg -i input.aac -c:a libvorbis b 8 out.ogg
ffmpeg -i input.aac -c:a libvorbis=b:8 out.ogg

но никто не работает, как ожидалось.

ОБНОВЛЕНИЕ: я хочу знать, как "перевести" опции, перечисленные в документе ffmpeg (libvorbis wrapper), в команду ffmpeg. Я могу сойти с рук -ab переключиться, чтобы сделать транскод, но я не думаю, что это специфические параметры оболочки libvorbis. Поэтому, если вы предоставите ответ, пожалуйста, предоставьте демо-версию, указав также все следующие параметры.

b (-b)

q (-q)

minrate (-m)

maxrate (-M)

iblock

2 ответа

Решение

Ответ на ваш вопрос:

oggenc option    corresponding ffmpeg option
-b               -b:a
-q               -q:a
-m               -minrate
-M               -maxrate

Пример команды

ffmpeg -i input.aac -c:a libvorbis -b:a 8k output.oga

Если желаемое значение 8k не удается использовать более высокий битрейт или снизить частоту дискретизации звука с -ar, такие как -ar 8000,

Информация о кодировщике и мультиплексоре

Вы можете увидеть дополнительную информацию и единственную частную опцию, специфичную для этого кодировщика:

ffmpeg -h encoder=libvorbis

Вы также можете получить информацию о формате контейнера muxer/output:

ffmpeg -h muxer=ogg

Это работает для меня:

ffmpeg -i test.aac -c:a libvorbis -b:a 64k test.ogg

Я не думаю, что 8kb/s является допустимым значением, но я могу ошибаться.:-)

Другие вопросы по тегам