2012-09-25 13 views
2

我開始玩Opencv。我在Linux上使用opencv2的python綁定。我寫了一個快速測試程序,但似乎無限期地掛起。如何在OpenCV2中查看視頻流python

import cv2 

weblink = "http://continuous-video-stream-here" 
cv2.namedWindow("video") 

vid = cv2.VideoCapture(weblink) 
key = -1 

while (key < 0): 
    success, img = vid.read() 
    cv2.imshow("video", img) 

但它掛在這個輸出:

(video:14388): GStreamer-CRITICAL **: gst_caps_unref: assertion `caps != NULL' failed 

我也試圖從urllib2的閱讀:

vid = cv2.VideoCapture(urllib2.urlopen(weblink).read()) 

但是,這也不能工作。

我使用opencv 2.4.2,ffmpeg的-0.11.2

編輯:視頻飼料用途的RealPlayer的瀏覽器中顯示通過HTTP視頻。

回答

0
安全

代碼和測試方法的返回:

vid = cv2.VideoCapture(weblink) 
if not vid: 
    print("!!! Failed VideoCapture: invalid parameter!") 

您正在使用的地址可能不被支持的OpenCV。

相同的做法,應使用每當一個方法可能失敗:

while (key < 0): 
    success, img = vid.read() 
    if not img: 
     print("!!! Failed vid.read()") 
     break 

    cv2.imshow("video", img)