我正在尝试使Youtube实时流与openCV一起使用,但是在10帧之后,它只是停止并在2分钟后重新启动。
错误消息:
[tls @ 000001676fa27400] Unable to read from socket
[tls @ 000001676fa27400] Writing encrypted data to socket failed
[tls @ 000001676fa27400] Failed to send close message
使用的代码:
import cv2
import pafy
url = 'https://youtube.com/watch?v=51djMAqsmIQ'
vPafy = pafy.new(url)
play = vPafy.getbest()
print(play.url)
cap = cv2.VideoCapture(play.url)
while (True):
ret,frame = cap.read()
cv2.imshow('frame',frame)
if cv2.waitKey(20) & 0xFF == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
答案 0 :(得分:0)
我也确实遇到了来自YouTube的实时HSL流的问题。
我确实使用了以下方法:
https://github.com/streamlink/streamlink/issues/857
在这种情况下,我使用streamlink来制作文件/ tmp / stream。 使用opencv我正在读取文件/ tmp / stream ..
(缺点:您必须停止流,否则文件会变大)