我正在与新版本的OpenCV 2.4.7战斗将近一周(上一次使用2.4.2)。我对新设置的动机是,我使用Videowriter解决了未压缩的灰度视频(http://answers.opencv.org/question/3603/videowriter-videocapture-and-uncompressed-avi/)的问题。在https://github.com/Itseez/opencv/pull/1516中,“akarsakov”建议在没有vfw支持的情况下构建OpenCV,并通过ffmpeg打开未压缩的视频。这就是我试图做的事情。我基本上遵循了此视频中提到的说明:http://docs.opencv.org/trunk/doc/tutorials/introduction/windows_install/windows_install.html
我已经使用Qt 5.1.1(http://answers.opencv.org/question/24184/how-to-compile-opencv-247-with-qt-and-ffmpeg/)成功构建了opencv。但是我无法获得VideoWriter& VideoCapture为我工作。所以我做了什么:
我从http://ffmpeg.zeranoe.com/builds/下载了最新的ffmpeg版本
我生成了vs2010项目,禁用了VfW并启用了ffmpeg:
Video I/O:
Video for Windows: NO
DC1394 1.x: NO
DC1394 2.x: NO
FFMPEG: YES (prebuilt binaries)
codec: YES (ver 55.18.102)
format: YES (ver 55.12.100)
util: YES (ver 52.38.100)
swscale: YES (ver 2.3.100)
gentoo-style: YES
OpenNI: NO
OpenNI PrimeSensor Modules: NO
PvAPI: NO
GigEVisionSDK: NO
DirectShow: YES
Media Foundation: NO
XIMEA: NO
我将ffmpeg的include目录和lib添加到highgui模块。
我无法在没有任何错误的情况下编译OpenCV,但我看到的行为并不是我所期望的:
是否有人遇到同样的问题并能指出我的错误?
提前谢谢你。 欢呼声
答案 0 :(得分:1)
OpenCV 2.4.7需要更新版本的FFmpeg才能正常工作,但这似乎没有问题,因为你有这个问题。
问题的原因可能是 bug #2281 :VideoCapture::read fails on uncompressed video。
作为中间解决方案,我建议你降级到OpenCV 2.4.5。