Jupyter NotebookにYouTube, Vimeoの動画を埋め込む
Jupyter Notebook(IPython Notebook)にYouTubeやVimeoの動画を埋め込むことができる。
学習用の動画を埋め込んだり、動画の処理を行うコードに処理前後の動画を埋め込んだりできる(YouTube, Vimeoにアップロードする必要はあり)。
なお、この機能はIPythonで実装されているものなので他のカーネルでは使えない。
ここでは以下の内容について説明する。
- YouTube動画を埋め込み:
IPython.display.YouTubeVideo()
- Vimeo動画を埋め込み:
IPython.display.VimeoVideo()
YouTube動画を埋め込み: IPython.display.YouTubeVideo()
以下の動画を例とする。
IPython.display
モジュールをインポートして使う。
IPython.display.YouTubeVideo()
の引数に動画のURLのv=<文字列>
の部分の文字列(動画のID)を指定する。
import IPython.display
IPython.display.YouTubeVideo('6XvmhE1J9PY')
from IPython.display import YouTubeVideo
として関数を直接インポートすれば、呼び出し時のIPython.display.
は省略可能。
幅と高さを引数width
, height
で指定可能。デフォルトはwidth=400
, height=300
。
IPython.display.YouTubeVideo('6XvmhE1J9PY', width=480, height=270)
そのほか、埋め込みプレーヤーのパラメータをキーワード引数で指定できる。パラメータ一覧のドキュメントは以下にあるが、更新されていないようで現在は無効になっているものも掲載されている。
例えば、再生開始時間の秒数は引数start
で指定できる。
IPython.display.YouTubeVideo('6XvmhE1J9PY', start=30)
実際に動画を埋め込んだipynb
ファイルは以下を参照。
nbviewerは対応しているが、GitHubのビューワーは対応していないので注意(2018年10月31日時点)。以下はGitHubに置いてあるipynb
へのリンク。出力セルが空白になっている。
Vimeo動画を埋め込み: IPython.display.VimeoVideo()
以下の動画を例とする。
VimeoもYouTubeと同様にIPython.display
モジュールをインポートして使う。
IPython.display.VimeoVideo()
の引数に動画のURL末尾の数値(動画ID)を指定する。
IPython.display.VimeoVideo('289502328')
引数width
, height
および埋め込みプレーヤーのパラメータをキーワード引数で指定できる。パラメータ一覧は以下。
再生開始位置のパラメータは#t
だが、#
で始まる値をキーワード引数で指定できないので、この関数では使えない。
実際に動画を埋め込んだipynb
ファイルは以下を参照。