동영상 저장하기
c++)
빈 파일을 만들고 한프레임씩 쓴다
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | #include <opencv/cv.h> #include <opencv/highgui.h> void main() { IplImage *frame = 0; CvVideoWriter *writer = 0; //cvCaptureFromFile(파일명) : 동영상 파일 불러오기 CvCapture *capture = cvCaptureFromAVI("D:/study/su.avi"); cvNamedWindow("video", CV_WINDOW_AUTOSIZE); int fps = 30; //30프레임 //첫번째 프레임으로부터 크기 구하기 cvGrabFrame(capture); frame = cvRetrieveFrame(capture); //cvCreateVideoWriter(경로, 코덱방식, fps, 프레임크기) : 동영상파일 생성 //CV_FOURCC('D', 'I', 'V', 'X') : MPEG-4 코덱 writer = cvCreateVideoWriter("D:/study/opencv_ex1/copy.avi", CV_FOURCC('D', 'I', 'V', 'X'), fps, cvGetSize(frame)); while (1) { //cvGrabFrame(동영상) : 하나의 프레임을 잡음 cvGrabFrame(capture); //cvRetrieveFrame(동영상) : 잡은 프레임으로부터 이미지를 구함 frame = cvRetrieveFrame(capture); if (!frame || cvWaitKey(10) >= 0) { break; } //cvWriteFrame(동영상, 프레임) : 지정한 동영상에 프레임을 쓴다 cvWriteFrame(writer, frame); cvShowImage("video", frame); } //cvReleaseVideoWriter(동영상) : 메모리에서 해제한다 cvReleaseVideoWriter(&writer); cvReleaseCapture(&capture); cvDestroyWindow("video"); } | cs |
결과
동영상 파일이 생성된다
'IT > - 프로그래밍' 카테고리의 다른 글
OpenCV 동영상 반전하기 (0) | 2017.05.16 |
---|---|
OpenCV 동영상에 자막 넣기 (0) | 2017.05.15 |
OpenCV 동영상에서 에지 검출하기 (0) | 2017.05.13 |
OpenCV 컬러영상을 흑백영상으로 변환하기 (0) | 2017.05.12 |
OpenCV 동영상 재생하기 (0) | 2017.05.11 |