我正在尝试处理大型AVI文件(约61000帧,505MB),
OpenCV,使用cvCaptureFromAVI()
和cvQueryFrame()
。
但是,cvQueryFrame()
在到达最后一帧之前返回NULL
指针
的AVI。
long int numframe = 6000;
while (numframe < 67000)
{
frame = cvQueryFrame( capture );
if (! frame)
{
fprintf(stderr, "could not query the frame %ld.\n", numframe);
break;
}
char namefile[250];
sprintf( namefile, "/media/6E86F8CB03A4DFA4/image-sequence/%ld.jpg", numframe );
cvSaveImage( namefile, frame ); // save frame as a image
numframe++;
}
是否还有其他人遇到过同样的问题并找到了解决方法?
有什么我可以做的吗?
最佳答案
很可能您是FFMPEG集成错误之一。 This bugreport看起来与您的问题非常相似。
您正在使用哪个版本的OpenCV?
我以任何方式推荐您: