1
我试图开发一个应用程序,它应该分析来自MIPI摄像机(500万像素)的视频流。因此,我正在使用gstreamer使用OpenCV获取视频供稿。我尝试了以下的管道,它的工作:使用OpenCV访问摄像机(通过GStreamer)
imxv4l2videosrc device="/dev/video0" ! autovideosink
但是,当我尝试使用OpenCV的使用它,它给了一些错误。
VideoCapture cap("imxv4l2videosrc device=\"/dev/video0\" ! autovideosink");
OpenCV Error: Unspecified error (GStreamer: cannot find appsink in manual pipeline
) in cvCaptureFromCAM_GStreamer, file /root/OpenCV/opencv/modules/videoio/src/cap_gstreamer.cpp, line 759
VIDEOIO(cvCreateCapture_GStreamer (CV_CAP_GSTREAMER_FILE, filename)): raised OpenCV exception:
/root/OpenCV/opencv/modules/videoio/src/cap_gstreamer.cpp:759: error: (-2) GStreamer: cannot find appsink in manual pipeline
in function cvCaptureFromCAM_GStreamer
然后我试着用下面的管道,它不工作,以及:
VideoCapture cap("imxv4l2videosrc device=\"/dev/video0\" ! appsink");
ERROR: unrecognized std! 0 (PAL=ff, NTSC=b000
ERROR: v4l2 capture: unsupported ioctrl!
GStreamer Plugin: Embedded video playback halted; module imxv4l2videosrc0 reported: Internal data flow error.
ERROR: v4l2 capture: unsupported ioctrl!
OpenCV Error: Unspecified error (GStreamer: unable to start pipeline
) in cvCaptureFromCAM_GStreamer, file /root/OpenCV/opencv/modules/videoio/src/cap_gstreamer.cpp, line 832
VIDEOIO(cvCreateCapture_GStreamer (CV_CAP_GSTREAMER_FILE, filename)): raised OpenCV exception:
/root/OpenCV/opencv/modules/videoio/src/cap_gstreamer.cpp:832: error: (-2) GStreamer: unable to start pipeline
in function cvCaptureFromCAM_GStreamer
的GStreamer版本:1.0 OpenCV的版本:3.2
什么是一块,我很在这里失踪? 或者我的方法是错误的?
可能重复和解决方案为:http://stackoverflow.com/questions/23570572/using-custom-camera-in-opencv-via-gstreamer – GroovyDotCom
@GroovyDotCom,我已经尝试过你在这里提到的帖子。但mfw_v4lsrc不起作用。它说:警告:错误的管道:没有元素“mfw_v4lsrc”。 – KTB
你可以用'videoconvert'元素来试试吗? :'VideoCapture cap(“imxv4l2videosrc device = \”/ dev/video0 \“!videoconvert!appsink”);' –