3

我已经尝试在两个 Mac 中编译 OpenCSV,但我都有错误。错误如下:

Building CXX object modules/highgui/CMakeFiles/opencv_highgui.dir/src/cap_ffmpeg.cpp.o
use of undeclared identifier 'avformat_find_stream_info'; 
did you mean 'av_find_stream_info'?
/usr/local/include/libavformat/avformat.h:1168:5: note: 'av_find_stream_info' declared here int av_find_stream_info(AVFormatContext *ic);

/usr/local/include 中的 libavformat 与 ffmpeg 一起安装。ffmpeg 是 0.8.5 版本

有人有同样的问题吗?

4

2 回答 2

2

我基本上编辑了 modules/highgui/src/cap_ffmpeg_impl.hpp 中的代码

#if LIBAVFORMAT_BUILD >= CALC_FFMPEG_VERSION(53, 3, 0)
    avformat_find_stream_info(ic, NULL);
#else
    av_find_stream_info(ic);
#endif

#if LIBAVFORMAT_BUILD >= CALC_FFMPEG_VERSION(53, 3, 0)
    av_find_stream_info(ic);
    //avformat_find_stream_info(ic, NULL);
#else
    av_find_stream_info(ic);
#endif

这解决了它。到目前为止没有问题。

于 2012-07-20T19:11:52.640 回答
2

您可以通过在命令中添加以下参数来禁用 ffmpeg cmake(例如参见本手册):

-DWITH_FFMPEG=OFF

假设您在构建中实际上不需要 ffmpeg,这将消除错误。

于 2016-01-16T22:25:13.707 回答