cvCreateVideoWriter 录制视频的一个可用程序

来源:互联网 发布:qq群淘宝客用什么软件 编辑:程序博客网 时间:2024/06/05 14:40

编程环境:Win7+VS2008+OpenCV2.3

#include <cv.h>#include <highgui.h>#include <ctype.h>#include <stdio.h>int main (int argc, char **argv){ CvCapture *capture = 0;  IplImage *frame = 0; CvVideoWriter *vw;  int w = 250, h = 250;  int c, num = 0;  CvFont font; char str[64];   capture = cvCaptureFromCAM (0); cvSetCaptureProperty (capture, CV_CAP_PROP_FRAME_WIDTH, w);cvSetCaptureProperty (capture, CV_CAP_PROP_FRAME_HEIGHT, h);  cvInitFont (&font, CV_FONT_HERSHEY_COMPLEX, 0.7, 0.7); cvNamedWindow ("Capture", CV_WINDOW_AUTOSIZE); frame = cvQueryFrame (capture); CvSize size = cvGetSize(frame);vw = cvCreateVideoWriter ("cap.avi",-1 , 15, size,1);  // 创建写入器if (!vw){printf("create video error");}while (1) {    frame = cvQueryFrame (capture); _snprintf_c(str, 64, "%03d[frame]", num);   cvPutText (frame, str, cvPoint (10, 20), &font, CV_RGB (0, 255, 100));  cvShowImage ("Capture", frame); cvWriteFrame (vw, frame);   num++;  c = cvWaitKey (10);  // 在接下来的10ms中持续检测按键 if ('q' == c){break;}}  cvReleaseVideoWriter (&vw); // 释放视频写入器cvReleaseCapture (&capture); cvDestroyWindow ("Capture"); return 0;}
注:在压缩程序选择Microsoft RLE 和 VMnc v2 的时候, 无法录制成功。  选择其余几个均测试成功。

原创粉丝点击