我正在尝试使用gstreamer pipleine在OpenCV中打开IP摄像头。 我可以使用终端中的Gstreamer打开IPcamera,使用:
gst-launch-1.0 -v rtspsrc location="rtsp://192.168.0.220:554/user=admin&password=admin&channel=1&stream=0.sdp?real_stream--rtp-caching=10" latency=10 ! rtph264depay ! h264parse ! omxh264dec ! videoconvert ! xvimagesink
现在,我可以在OpenCV videoCapture()
中打开相同的相机。
感谢任何帮助。
答案 0 :(得分:2)
您可以复制相同的管道并在VideoCapture中使用它(如果您使用gstreamer模块构建OpenCV)。
重点是您需要使用appsink
元素完成管道。
const char* pipe = "rtspsrc location=\"rtsp://192.168.0.220:554/user=admin&password=admin&channel=1&stream=0.sdp?real_stream--rtp-caching=10\" latency=10 ! rtph264depay ! h264parse ! omxh264dec ! videoconvert ! appsink";
VideoCapture cap(pipe);