Python OpenCV不支持编解码器

时间:2013-04-09 13:07:34

标签: python opencv

我遇到了OpenCV的Python包装器的奇怪问题。我正在使用cv2绑定并且能够用它做很多事情,但最新的问题是我无法创建VideoWriter

当我尝试使用此命令创建视频编写器时:

cv2.VideoWriter('foo.out.mov', cv2.cv.CV_FOURCC('m','p','4','v'), 25, (704, 480), 1)

我收到以下错误:

error: /builddir/build/BUILD/OpenCV-2.3.1/modules/highgui/src/cap_gstreamer.cpp:483:     error: (-210) Gstreamer Opencv backend doesn't support this codec acutally. in function CvVideoWriter_GStreamer::open

创建VideoCapture时,我可以使用read方法成功检索帧,但是对get方法的任何调用都需要检索参数,例如帧宽,帧高或FOURCC代码都返回 0.0 < / em>的。

我想从我打开的文件中获取确切的编解码器,将其传递给VideoWriter,但由于这只返回0.0,我不知道该怎么做。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

尝试传递-1作为fourcc参数。这应该弹出一个对话框,让你选择一个视频编解码器。我这样使用它,效果很好。

cv2.VideoWriter('foo.out.mov', -1, 25, (704, 480), 1)