我一直在尝试使用OpenCV和Visual Studio 2008创建一个应用程序,以从网络摄像头捕获图像,对其应用滤镜,然后将其写入AVI文件。
一切正常,除了创建AVI文件。
问题是它可以在我的计算机上运行,但不能在同事的计算机上运行。原因(我认为)是因为他没有供OpenCV使用的必要视频编码器。
cvCreateVideoWriter函数不会返回NULL,但最终在磁盘上有一个0kb的文件。
最佳答案
为什么不测试所有编解码器,以便播放保存:
CV_FOURCC('P','I','M','1') = MPEG-1 codec
CV_FOURCC('M','J','P','G') = motion-jpeg codec (does not work well)
CV_FOURCC('M', 'P', '4', '2') = MPEG-4.2 codec
CV_FOURCC('D', 'I', 'V', '3') = MPEG-4.3 codec
CV_FOURCC('D', 'I', 'V', 'X') = MPEG-4 codec
CV_FOURCC('U', '2', '6', '3') = H263 codec
CV_FOURCC('I', '2', '6', '3') = H263I codec
CV_FOURCC('F', 'L', 'V', '1') = FLV1 codec
编解码器代码为-1将打开一个编解码器选择窗口(在Windows中)。
关于video - 在OpenCV中创建AVI文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1136989/