2

Я новичок в ffmpeg , просто пытаюсь создать файл SDP для потоковой передачи. Я сталкиваюсь с ошибкой при запуске команды

ffmpeg -re -i "sample.mp4" -f rtp rtp://127.0.0.1:10000 -flags +global_header -c:a libvo_aacenc -vn -map 0:1 -f rtp rtp://127.0.0.1:10002 > 10000.sdp

Ошибка:

Unknown encoder 'libvo_aacenc'

Как мне решить это?

2 ответа2

9

Ваш ffmpeg, вероятно, не был настроен с --enable-libvo-aacenc . Однако существуют другие, более качественные кодеры AAC, которые можно использовать с ffmpeg. ffmpeg -codecs выведет список всех кодеров, которые были настроены для каждого поддерживаемого кодека; найдите строку "aac" и кодировщики, перечисленные в этой строке. Если у вас нет другого кодера AAC, вы всегда можете использовать экспериментальный кодер AAC, который встроен в ffmpeg (-strict experimental -c:a aac), или создать свой собственный ffmpeg с вашим любимым кодером AAC. Руководство по выбору кодера AAC см. В Руководстве по кодированию AAC ffmpeg.

Обновление: Начиная с FFmpeg 3.0 (февраль 2016 г.), libvo-aac был удален из FFmpeg, поскольку встроенный кодировщик AAC имеет превосходное качество и больше не является экспериментальным. Вместо этого предлагается использовать встроенный кодировщик (-c:a aac) или libfdk-aac (-c:a libfdk_aac).

0

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

sudo apt-get install libavcodec-extra

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