我正在尝试使用Native Client开发视频编码器。 我希望输出文件是.webm,我正在使用ffmpeg示例“muxing.c”。
当我运行该示例时,我收到错误消息:找不到'vp8'的编码器
错误来自:
*codec = avcodec_find_encoder(codec_id);
if (!(*codec)) {
fprintf(stderr, "Could not find encoder for '%s'\n",
avcodec_get_name(codec_id));
}
其中codec_id
值为AV_CODEC_ID_VP8
当我将输出文件设置为.mp4时,它可以工作。
有人能帮助我吗? 我是否需要为ffmpeg naclport启用vp8编码器? 我该怎么办?
谢谢!
@Lee Gi Gone:
是。您必须使用libvpx库编译ffmpeg才能进行编码 VP8 / VP9。你可以通过yum,apt安装它。或者你可以编译它 手动
安装libvpx后,在下面安装带有libvpx的ffmpeg 命令:
./configure --enable-libvpx make -j 4 make install
我将libvpx的依赖项放在ffmpeg naclport上的build.sh和pkg_info上并重新构建它。现在它有效!
答案 0 :(得分:1)
是。你必须用libvpx库编译ffmpeg来编码vp8 / vp9。你可以通过yum,apt安装它。或者你可以手动编译它。
安装libvpx后,在以下命令中使用libvpx安装ffmpeg:
./configure --enable-libvpx
make -j 4
make install