我正在使用OpenCV 2.4.3和我自己的64位二进制文件,这些二进制文件也是使用QT 4.8.3构建的。我正在使用DirectShow进行视频捕捉,最近遇到了一个我无法解决的问题。即,以下代码适用于小于2043帧的未压缩.avi文件。
VideoCapture src = "D:/TestVideo/BigFile.avi";
Mat img;
while( src.read(img) )
{
imshow("Input", img);
waitKey(30);
}
但是,src.read(img)在第2043帧返回false。
它在不同的Windows 7,64位平台上以及大于2043帧的所有.avi文件中执行此操作。我怀疑这很重要,但视频是640x480,8位,1和3频道。
之前有没有人见过这个问题,你能推荐一个解决方案吗?
谢谢, TR