如何在Visual Studio 2010中使用ffmpeg支持编译OpenCV 2.3

时间:2011-08-16 08:02:42

标签: opencv

这是两天我在网上搜索一下编译OpenCV 2.3并在windows下使用ffmpeg支持的教程,但没有找到。我在VS2010中使用预构建版本的OpenCV,但我无法从网络摄像头读取,这就是我需要ffmeg支持的原因。

3 个答案:

答案 0 :(得分:4)

您正在寻找的答案就在这里,它适用于32位和64位配置。 我使用了这个FFMPEG版本。 http://ffmpeg.zeranoe.com/builds/win64/dev/ffmpeg-git-1aeb88b-win64-dev.7z

1)下载OpenCV 2.3

2)打开根CMakeLists.txt并插入行集(HAVE_FFMPEG 1)

3)下载http://ffmpeg.zeranoe.com/builds/win64/dev/ffmpeg-git-1aeb88b-win64-dev.7z(如果您喜欢,则下载32位版本)

4)使用#define INT64_C编辑ffmpeg include dir中的avformat.h

5)使用#define snprintf _snprintf

编辑highgui项目中的cap_ffmpeg_impl.hpp

6)在C / C ++下的highgui项目属性中>其他包含目录添加刚刚下载的FFMPEG包含目录的路径

7)在Linker> General> Additional Library Dependencies下的同一属性页面上,添加刚刚下载的FFMPEG的lib目录的路径

8)在链接器>输入>附加依赖项下的同一属性页面上添加lib中找到的ffmpeg库的所有名称(avformat.lib,avscale.lib,avcore.lib等)

9)构建highgui项目

10)将FFMPEG附带的.dll文件的路径添加到系统路径环境变量中。

就是这样! 10个简单的步骤;)

答案 1 :(得分:3)

使用CMake从源代码构建OpenCV。选择USE_FFMPEG标志。

http://ffmpeg.zeranoe.com/builds/

获取ffmpeg

答案 2 :(得分:1)

在我的实验中,窗口中不直接支持FFMPEG。标志WITH_FFMPEG仅出现在UNIX(opencv 2.3 CMakeLists.txt)下。因此,如果您想使用ffmpeg支持构建opencv 2.3,您应该自己编辑CmakeLists.txt或项目opencv_highgui。然后从WWW获取ffmpeg。您可能还需要编辑cap_ffmpeg_impl.hpp。