Grabar_video

Otro codigo para hacer muestras de video, no esta muy bien comentado pero sirve

code format="c"
 * 1) include "cv.h"
 * 2) include "highgui.h"

long int MAXCUADROS=27000;//maximo de cuadros que se quieren grabar

int main(int argc, char** argv) {	int key=-1; CvCapture* capture = 0; capture = cvCaptureFromCAM( argc == 2 ? argv[1][0] - '0' : 0 );//captura del dispositivo 0 por defecto si no se le mete nada cvNamedWindow("Imagen",1); if( !capture ) {       fprintf(stderr,"No se pudo iniciar.\n"); return -1; }	//cvSetCaptureProperty( capture, CV_CAP_PROP_FRAME_WIDTH, 640 ); //cvSetCaptureProperty( capture, CV_CAP_PROP_FRAME_HEIGHT, 480 ); IplImage* videoFrame = NULL; videoFrame = cvQueryFrame(capture); long int cuadros=0; if(!videoFrame) {       printf("mal cuadro \n"); exit(0); }	//CvVideoWriter* creavideo = cvCreateVideoWriter("C:\\video.avi",CV_FOURCC('M','J','P','G'), 29.95, cvSize(videoFrame->width, videoFrame->height)); int cont=1; char nombre[100]; while(1) {	printf("C:\\video%d.avi",cont); sprintf(nombre,"C:\\video%d.avi",cont); CvVideoWriter* creavideo = cvCreateVideoWriter(nombre,CV_FOURCC('X','V','I','D'), 15.0, cvSize(videoFrame->width, videoFrame->height)); cuadros=0; while( (cuadros < MAXCUADROS) && (key != 'q') ) {			cuadros++; videoFrame = cvQueryFrame(capture); cvShowImage("Imagen",videoFrame); cvWriteFrame(creavideo, videoFrame); key = cvWaitKey(20); }	cvReleaseVideoWriter(&creavideo); if((key == 'q')) break; cont++; }

cvReleaseCapture(&capture); return 0; }

code