windows - OpenCV捕获的视频比实时运行的快吗?

我正在使用openCV从摄像机捕获视频并将其存储到avi文件,问题是当我完成捕获并运行avi文件时,视频流看起来笨拙地...

这是代码

int isColor = 1;
 int frameW  = 640;
 int frameH  = 480;
 int fps     = 25;

 CvCapture* capture = cvCaptureFromCAM(0);
 assert( capture != NULL );

 cvNamedWindow( "Webcam", CV_WINDOW_AUTOSIZE);

 CvVideoWriter *writer = cvCreateVideoWriter(
   "out.avi",
   CV_FOURCC('M','J','P','G'),
   fps,
   cvSize(frameW,frameH),
   isColor
  );

 IplImage* frame = cvQueryFrame( capture );

 while( (frame = cvQueryFrame( capture )) != NULL ) {
  cvWriteFrame(writer, frame);
  cvShowImage("Webcam", frame);
  char c = cvWaitKey( 33 );
  if ( c == 27 ) break;
 }

我不明白为什么当我在Windows 7 32位或64位以及Vs2008&OpenCV 2.3.1上使用cvGetCaptureProperty(CV_CAP_PROP_FPS)时,此功能始终返回0,这是错误的,请帮帮我,谢谢

最佳答案

cvSetCaptureProperty和cvGetCaptureProperty并不总是有效。另外,您是否尝试过fps = 30?

还值得注意的是,您需要以与捕获fps相同的fps播放视频。

https://stackoverflow.com/questions/8730251/

相关文章:

android - Android:BitmapFactory.decodeFile/OpenCV确

opencv - C++ Eclipse OpenCV : . 生成了 exe 文件和二进制文件,但

android - 1 channel iplimage -> Android 位图

opencv - 我可以在POSIT + OpenCV中使用mm吗?

android - Android OpenCV手势识别

opencv - 在opencv中未检测到网络摄像头

opencv - cvBlobsLib 的特征向量和特征值

performance - OpenCV 的视频流很慢

iphone - openCV CvSVM::save为iPhone生成太大的文件

opencv - Ubuntu:NetBeans:OpenCV:找不到共享库