c++ 和 openCV with windows8:VideoWriter 类未打开

c++ and openCV with windows8: VideoWriter class not opening

本文关键字:VideoWriter openCV with windows8 c++      更新时间:2023-10-16

我正在尝试使用openCV的类VideoWriter录制视频。

使用以下函数,

void addFrameToVideo(Mat& frame)
{
    if(_vid.open("test.avi", CV_FOURCC('M','J','P','G'), 30, frame.size(), 1))
        cout << "here" << endl;
    _vid.write(frame);
}

_vid是视频作家类型的变量,我可以毫无问题地显示帧。

if 条件永远不会验证,因为程序永远不会输出"这里"。但是,此代码实际上在目录中创建了一个"test.avi"文件,但它仍为空。我尝试了几种不同的压缩方法,但没有成功。

有什么想法吗?

在您的

系统中可能找不到编解码器。您应该尝试使用不同的编解码器。或者,您可以传递值 -1 而不是 CV_FOURCC(),运行时会弹出一个窗口,其中包含系统上安装的所有编解码器,并要求您选择要使用的编解码器(这仅适用于 Windows)。