出现错误:未知编码器‘libvo_aacenc’

出现错误:未知编码器‘libvo_aacenc’

我是新手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'

我该如何解决这个问题?

答案1

您的 ffmpeg 可能未配置--enable-libvo-aacenc。但是,还有其他更高质量的 AAC 编码器可以与 ffmpeg 一起使用。 ffmpeg -codecs将列出已为每个支持的编解码器配置的所有编码器;查找“aac”行和该行上列出的编码器。如果您没有任何其他 AAC 编码器,您可以随时使用内置于 ffmpeg 的实验性 AAC 编码器(-strict experimental -c:a aac),或者构建你自己的 ffmpeg使用您最喜欢的 AAC 编码器。有关选择 AAC 编码器的指导,请参阅 ffmpegAAC 编码指南

更新:从 FFmpeg 3.0(2016 年 2 月)开始,libvo-aac已从 FFmpeg 中删除因为内置 AAC 编码器质量较高,并且不再处于实验阶段。建议改用内置编码器 ( -c:a aac) 或 libfdk-aac ( -c:a libfdk_aac)。

答案2

这为我解决了这个问题:

sudo apt-get install libavcodec-extra

相关内容