这篇介绍的很详细:https://blog.csdn.net/guduruyu/article/details/68486063
不过这是基于opencv3的,对于OpenCV2,在使用VideoCapture 的set和get函数时,用到的CAP_PROP_FPS要改成CV_CAP_PROP_FPS,其他的类推。
VideoWriter保存视频的编码格式:https://blog.csdn.net/yang_xian521/article/details/7440190
下面是一个小栗子:
#include <opencv2/opencv.hpp>
using namespace cv;
int main()
{
Mat img;
VideoCapture invid(0);
//int fps=(int)invid.get(CV_CAP_PROP_FPS);
int width=(int)invid.get(CV_CAP_PROP_FRAME_WIDTH);
int height=(int)invid.get(CV_CAP_PROP_FRAME_HEIGHT);
//int fourcc=(int)invid.get(CV_CAP_PROP_FOURCC);
VideoWriter viw;
viw.open("abc.avi",CV_FOURCC('M','J','P','G'),20,Size(width,height));
if(!invid.isOpened())
return -1;
while(waitKey(100)!='q')
{
invid>>img;
imshow("src",img);
viw<<img;
}
invid.release();
}