【发布时间】:2020-02-04 22:04:55
【问题描述】:
我正在尝试在 OpenCV 中创建视频写入器对象,以将网络摄像头中的帧写入文件。但是我在这一行收到以下错误。
name1 = "videos/cam1.avi"
out = cv2.VideoWriter(name1,cv2.cv.CV_FOURCC('M','J','P','G'), 20.0, (1920,1080))
错误输出:
File "TestWebcam.py", line 14, in takeImage
out = cv2.VideoWriter(name1,cv2.cv.CV_FOURCC('M','J','P','G'), 20.0, (1920,1080))
cv2.error: /home/odroid/software/opencv/opencv-2.4.13/modules/highgui/src/cap_gstreamer.cpp:1528: error: (-2) GStreamer: cannot put pipeline to play
in function CvVideoWriter_GStreamer::open
【问题讨论】:
-
OpenCV 正在尝试使用 Gstreamer 而不是 FFMPEG。您的 OpenCV 构建中可能缺少 FFMPEG。你自己构建了opencv吗?如果是这样,您可以检查是否在 cmake 中启用了 FFMPEG?
-
是的,确实如此。有趣的故事,该代码对其他文件非常有效,但对于这个特定文件却失败了。试图缩小错误来源。