
400-123-4657
我需要说的第一件事是我的笔记本电脑相机是网络摄像头SCB-0355N。因为无法打开根据在线方法录制的视频。后来,我认为它可能与摄像机录制格式有关,因此我使用了系统提供的录制软件来录制和保存。我发现它被保存了。它是一个.wmv文件,编码格式为WMV2。我真的意识到了!呢捆
cv_fourcc('m','j','p','g')
更改为
cv_fourcc('w','m','v','2')
就是这样,我一直在挣扎一天!
关键代码
cv::VideoCapture m_cap;
m_cap.open(0);
assert(m_cap.isOpened());
int rate = m_cap.get(CV_CAP_PROP_FPS);
cv::Mat frame;
m_cap>>frame;
cv::VideoWriter videowriter;
videowriter.open("test.wmv",CV_FOURCC('W','M','V','2'),30,cv::Size(frame.cols,frame.rows));
assert(videowriter.isOpened());
char keycode;
while ((keycode = cvWaitKey(30))) {
if (keycode == 27) {
break;
}
if (!m_cap.grab()) {
break;
}
m_cap>>frame;
videowriter<;
}
videowriter.release();
如果您遇到无法打开录制视频的情况,除了检查代码外,还要记住考虑相机的编码格式。