我想使用Python处理OpenCV中的mms视频流。 流来自IP摄像机,我无法控制(流量监视器)。 流可以作为彩信或MMST方案 - 两个VLC和Windows Media Player如何使用OpenCV捕获视频流(Python)
mms://194.90.203.111/cam2
戏剧。
mmst://194.90.203.111/cam2
只适用于VLC。 我试图通过使用FFmpeg和VLC重新流式传输将方案更改为HTTP,但它不起作用。
据我所知,mms使用Windows Media Video来编码流。没有运气在URI的末尾添加'.mjpeg'。我还没有找到什么类型的流被OpenCV接受。
这里是我的代码 -
import cv2, platform
#import numpy as np
cam = "mms://194.90.203.111/cam2"
#cam = 0 # Use local webcam.
cap = cv2.VideoCapture(cam)
if not cap:
print("!!! Failed VideoCapture: invalid parameter!")
while(True):
# Capture frame-by-frame
ret, current_frame = cap.read()
if type(current_frame) == type(None):
print("!!! Couldn't read frame!")
break
# Display the resulting frame
cv2.imshow('frame',current_frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
# release the capture
cap.release()
cv2.destroyAllWindows()
的 我缺少什么? OpenCV可以捕获什么类型的视频流? 有没有方案更改或转码的优雅解决方案?
谢谢!
Python ver 2.7.8,OpenCV的ver 2.4.9,两个x86。 Win7 x64
也许这将有助于:http://petrkout.com/electronics/low-latency-0-4-s-video-streaming-from-raspberry-pi-mjpeg-streamer-opencv/在客户部分 – Ryan 2014-11-01 18:21:11
谢谢@Ryan!该链接有很多很好的信息。最后的Python部分对它进行了固定。 – NoamR 2014-11-07 21:04:01