yt-dlp を使ってみた
目次
最近、yt-dlp という動画ダウンロードツールを使ってみました。けっこう前からあるものなので今さらではありますが、とりあえず今日はそんな話を書いてみます。
yt-dlp とは
公式リポジトリ
yt-dlp is a feature-rich command-line audio/video downloader with support for thousands of sites. The project is a fork of youtube-dl based on the now inactive youtube-dlc.
yt-dlp/yt-dlp: A feature-rich command-line audio/video downloader
ざっくりとした説明
冒頭でも記載しましたとおり動画ダウンロードCLIツールです。実行すると YouTube などのサイトから動画をダウンロードできます。
目的が達成できればツールはCLIでもGUIでもなんでもよかったんですが、けっこう有名というかわりとスタンダードなツールらしいので、困ったときに世の中に事例も多いだろうということで今回はこのツールを使ってみることにしました。
使ってみた目的
以前に YouTube にいくつか動画を上げてるんですが、それを手元に保存しておくのが目的です。自分のパソコンに残っていれば一番良かったんですがいろいろあって元ファイルはどこかにいってしまったので\(^o^)/で、どうにかして落とせないかなと思ってツールなどを探してみたらちょうど良さそうなものが見つかったので今回使ってみた次第です。
インストールと初回セットアップ
環境
一応今回は Mac が対象です。
- MacBook Air M2 2022
- macOS Sequoia 15.6.1
インストール
Installation · yt-dlp/yt-dlp Wiki
自分の環境は homebrew が入っているのでターミナルから brew でインストールする方法をとりました。(楽なので)
brew では注意書きのとおり最新版がインストールされない場合もあるようですが自分は使えればいいということで今回はこれでいきました。 ffmpeg は動画の変換処理に必要なようなのでこれも一緒にインストールしています。
brew install yt-dlp ffmpeg |
バージョンが出力できればOKです。
❯ yt-dlp --version |
❯ ffmpeg -version |
バージョンが出力されればインストールは完了です。
動画を落としてみる
yt-dlp は YouTube だけでなくニコニコ動画なんかもいけました。ニコニコ動画も昔アップした動画があってちょうど良かったのでこれを使って手元にダウンロードしました。
対応サイト一覧はこちら。めちゃくちゃ多い( ゚д゚)
yt-dlp/supportedsites.md at master · yt-dlp/yt-dlp
YouYube
yt-dlp "https://www.youtube.com/watch?v=VIDEO_ID" |
ニコニコ動画
yt-dlp "https://www.nicovideo.jp/watch/VIDEO_ID" |
ちなみにデフォルトはコマンドを実行したディレクトリに動画が保存されるようです。
よく使いそうだったオプション
READMEを見てたらオプションがありすぎて目移りしそうになりました。とりあえずよく使いそうなものをいくつか試しつつ下記に内容をメモしておきます。
音声だけ欲しい
-f 'ba[acodec^=mp3]/ba/b' -x --audio-format mp3 のプリセットエイリアスです。このへん に他にもいろいろあります。
yt-dlp -t mp3 "https://www.youtube.com/watch?v=VIDEO_ID" |
保存場所指定
デフォルトではコマンド実行ディレクトリにダウンロードしますが、明示的に場所を指定することも可能です。
yt-dlp -P "/path/to/dir" "https://www.youtube.com/watch?v=VIDEO_ID" |
保存名変更
-o オプションで名前をつけて保存できます。また、その際に組み込みの変数が使用可能で、例えばこんなかんじにするとアップロード日を接頭辞につけて保存することができます。
yt-dlp -o "%(upload_date)s_%(title)s.%(ext)s" "https://www.youtube.com/watch?v=VIDEO_ID" |
使用可能な組み込み変数の一覧は下記を参考にしてください。
yt-dlp/yt-dlp: A feature-rich command-line audio/video downloader#OUTPUT TEMPLATE
conf ファイルの設定
yt-dlpはサポートされているオプションをあらかじめ設定ファイルに記載しておくことで、毎回オプションを指定しなくてすむようにもできます。とりあえず自分は ~/yt-dlp.conf を作って以下のように記載しています。
# Lines starting with # are comments |
詳しくはこのへんをどうぞ。
yt-dlp/yt-dlp: A feature-rich command-line audio/video downloader#configuration
感想
実際に触ってみて良かったのは設定の自由度が高いわりに、基本操作はシンプルなところですね。いろいろ凝った設定をすることもできますが、基本的にはデフォルトのまま使ってもだいたい需要は満たせる印象です。
注意点
著作権者の許諾なくコンテンツを保存する行為は条件によっては違法ダウンロードに該当する可能性があります。yt-dlp はあくまで技術的に取得を補助するツールにすぎないため、基本的には自己責任です。また、サイト側の仕様変更で急に使えなくなる場合もあります。
おまけ
Windowsの人はこれ使うと楽です。