正在 Google Colab 上播放视频

Playing videos on Google Colab

我尝试使用以下代码在 Google Colab 上播放 YouTube 视频,

!pip install pytube==9.1.0
from pytube import YouTube
yt = YouTube('https://www.youtube.com/watch?v=-ncJV0tMAjE&t=72s')

yt object 的标题是,

print(yt.title)
>> 作業2 第二題 強健控制:結構化不確定參數的Riccati equation

然后,我导入了cv2.

import cv2
import numpy as np
cap = cv2.VideoCapture('作業2 第二題 強健控制:結構化不確定參數的Riccati equation.mp4')

while(cap.isOpened()):
    ret, frame = cap.read()

    gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)

    cv2.imshow('frame',gray)
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

cap.release()
cv2.destroyAllWindows()

但是,我总是收到一条错误消息,

Runtime died. Automatically restarting.

我该怎么办?

您需要获取视频的嵌入代码。

from IPython.display import HTML

HTML('<iframe width="560" height="315" src="https://www.youtube.com/embed/lTTZ8PkQ_Pk" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>')

如果您想在 google colab 上播放 YouTube 视频,

from IPython.display import YouTubeVideo
YouTubeVideo('-ncJV0tMAjE')

'-ncJV0tMAjE'来自'watch?v='之后的URL(https://www.youtube.com/watch?v=-ncJV0tMAjE)

那是因为 cv2.imshow 破坏了你在 google colab 中的会话,而不是你必须导入 cv2_imshow: from google.colab.patches import cv2_imshow,但是 cv2_imshow 只需要一个参数,那就是你的框架或图像。