gpt4 book ai didi

c++ - cvQueryFrame() 在文件结束前返回 NULL

转载 作者:行者123 更新时间:2023-11-28 08:16:41 26 4
gpt4 key购买 nike

我正在尝试处理大型 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?

我推荐你的任何方式:

  1. 尝试另一个版本的 OpenCV

  2. 尝试在没有 FFMPEG 的情况下构建 OpenCV。 OpenCV 可能能够使用 VfW 或 GS​​treamer 读取您的文件。

关于c++ - cvQueryFrame() 在文件结束前返回 NULL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7522830/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com