这个链接展示了如何使用Python的OpenCV库cv2
将相机数据流传输到Python shell中,非常简洁明了。我想进行一些实验,并想使用以下YouTube视频源:https://www.youtube.com/watch?v=oCUqsPLvYBQ
。
我尝试根据以下方式调整该示例:
import numpy as np
import cv2
cap = cv2.VideoCapture('https://www.youtube.com/watch?v=oCUqsPLvYBQ')
while(True):
# Capture frame-by-frame
ret, frame = cap.read()
# Display the resulting frame
cv2.imshow('frame',frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
哪个产生了错误:
WARNING: Couldn't read movie file https://www.youtube.com/watch?v=oCUqsPLvYBQ
OpenCV Error: Assertion failed (size.width>0 && size.height>0) in imshow, file /tmp/opencv20160107-29960-t5glvv/opencv-2.4.12/modules/highgui/src/window.cpp, line 261
有没有简单的解决方案,可以让我通过cv2
在Python shell中流式传输此视频源?如果有其他库可以完成相同的目的,也不一定要使用cv2
。
VideoCapture
。在 OpenCV 的文档中,videocapture 写道,参数应该是一个文件。但你可以使用 youtube-dl 中间转换一下。 - Dimitri Podborskiyoutube-dl
是个好选择。感谢你的建议! - aaron