【发布时间】:2011-10-03 18:43:59
【问题描述】:
根据“使用 opencv 显示视频”,我遇到了一点问题。代码是用Visual Studio 2008用C++编写的。
代码如下:
int main( int argc, char** argv )
{
cvNamedWindow( "xample2", CV_WINDOW_AUTOSIZE );
CvCapture* capture = cvCreateFileCapture( "Micro-dance_2_.avi" );
IplImage* frame;
while(1) {
frame = cvQueryFrame( capture );
if( !frame ) break;
cvShowImage( "xample2", frame );
char c = cvWaitKey(33);
if( c == 27 ) break;
}
cvReleaseCapture( &capture );
cvDestroyWindow( "xample2" );
}
调试时,程序启动,我可以看到命令窗口和灰色窗口(我想应该在哪里显示视频)几毫秒。然后两个窗口都关闭。
调试窗口的输出显示如下:
.. . (很多加载和卸载的dll) . . .
程序“[3684] 2aufg4).exe: Native”已退出,代码为 0 (0x0)。
我不知道我做错了什么......
非常感谢您的帮助!
谢谢你们
【问题讨论】:
-
程序看起来不错,但可能找不到 avi 文件。使用绝对路径作为 cvCreateFileCapture 的参数,看看是不是这样。
-
您可能缺少正确的编解码器。我已经很久没有看到它给出最新的建议了,但我似乎记得搜索“ffmpeg 和 opencv”找到了有用的答案。
标签: c++ visual-studio-2008 visual-c++ opencv