RTSP stream and OpenCV (Python)

一世执手 提交于 2019-12-17 16:17:05

问题


I have an IP camera streaming on Linux through rtsp protocol and h264 linux driver. I am able to see the video in VLC with the following address and port:

rtsp://192.168.1.2:8080/out.h264

However if I try to get the same video for OpenCV processing in Python 2.7.5 (MacOS X 10.9):

import cv
video = cv.CaptureFromFile('rtsp://192.168.1.2:8080/out.h264')

I get the following error:

WARNING: Couldn't read movie file rtsp://192.168.1.2:8080/out.h264

It seems something rather simple, but I am stuck on it. Thanks.


回答1:


this works for me (using opencv 2.4.9):

vcap = cv.VideoCapture("rtsp://192.168.1.2:8080/out.h264")

while(1):

    ret, frame = vcap.read()
    cv.imshow('VIDEO', frame)
    cv.waitKey(1)



回答2:


OpenCV relies on ffmpeg or other video backends for handling video formats and IP camera protocols. Depending on your platform and how you installed OpenCV, you may not have any support for rtsp.

You can check video backend support for your OpenCV installation:

python -c "import cv2; print(cv2.getBuildInformation())"

Video I/O:
  DC1394 1.x:                  NO
  DC1394 2.x:                  NO
  FFMPEG:                      NO
     avcodec:                   NO
     avformat:                  NO
     avutil:                    NO
     swscale:                   NO
     avresample:                NO
  GStreamer:                   NO
  OpenNI:                      NO
  OpenNI PrimeSensor Modules:  NO
  OpenNI2:                     NO
  PvAPI:                       NO
  GigEVisionSDK:               NO
  Aravis SDK:                  NO
  UniCap:                      NO
  UniCap ucil:                 NO
  V4L/V4L2:                    NO/NO
  XIMEA:                       NO
  Xine:                        NO
  gPhoto2:                     NO



回答3:


struggled for a while on this...

finally this got it going for me.



来源:https://stackoverflow.com/questions/20891936/rtsp-stream-and-opencv-python

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!