C ++,FFMpeg:无法找到任何解码器或编码器

时间:2016-07-05 20:44:26

标签: c++ ffmpeg

我一直在使用此示例https://ffmpeg.org/doxygen/trunk/decoding__encoding_8c.html作为我的C ++应用程序的参考。我使用了与给定页面中相同的代码。我已经链接了库,放置了dll并编译没有错误。一切正常,除了它总是抛出:Codec未找到错误。

/* find the MPEG-1 video decoder */
codec = avcodec_find_decoder(AV_CODEC_ID_MP2);
if (!codec) {
    fprintf(stderr, "Codec not found\n");
    exit(1);
}

我已经将线路更改为AV_CODEC_ID_MP2,只是为了测试是否只丢失了MPEG编码,但似乎都缺失了。我已经尝试将其更改为avcodec.h文件(enum AVCodecID,第189行)中定义的多个编解码器,但都返回“未找到编解码器”。

我错过了什么吗?

编译器:Microsoft Visual Studio 2015社区版 项目类型:QTProject

哦,我正在尝试制作视频播放器,以便在这些假期中提高我的c ++技能。首先我尝试使用QTMediaPlayer Widget,但它在“DirectShowPlay :: doRender”或类似的东西上抛出了疯狂的错误。所以我切换到FFMpeg,但这也不起作用。

感谢您阅读我的问题。

1 个答案:

答案 0 :(得分:1)

哦,没关系。这是我的错。我忘了avcodec_register_all(); 洛尔