以下代码无法打开VideoWriter对象:
#include <iostream>
#include <opencv2/core/core.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/highgui/highgui.hpp>
using namespace cv;
using namespace std;
int main() {
VideoWriter oVideo;
oVideo.open ("381.avi", -1, 30, Size(640,480), true);
if (!oVideo.isOpened()) {
cout << "Could not open the output video for write" << endl;
return -1;
}
return 0;
}
我正在Ubuntu 12.04上使用Code::Blocks预构建的OpenCV 2.4.9。我已经使用imwrite()
在同一位置写入了多张图片,没有出现问题,所以我不认为这与权限有关。我还尝试过CV_FOURCC('X','V','I','D')
,但没有成功。
我错过了什么吗?
非常感谢任何帮助。
CV_FOURCC('M','J','P','J')
。或者('M','P','E','G')
。XVID可能不是您系统中存在的编解码器。 - a-Jays-1
或CV_FOURCC_PROMPT
。在其他平台上,您必须指定一个 fourcc 值。 - sgarizviCV_FOURCC_DEFAULT
或CV_FOURCC('I','Y','U','V')
,它们是Linux默认值。 - sgarizvi