yt-dlp: 動画ダウンロードのための最新版youtube-dlフォーク
2020年10月23日、全米レコード協会(RIAA)はGitHub上でyoutube-dlに対してDMCAに基づく削除要請を行った。その3日後の10月26日、github.com/yt-dlp/yt-dlpに新たなリポジトリがひっそりと出現した。GitHubが11月16日に元のプロジェクトを復活させ、新たに100万ドルの開発者保護基金を設立した頃には、新しいフォーク版はすでにyoutube-dlの貢献者を吸収し始めていた。
そのフォークが現在メインのフォークです。2026年5月現在、yt-dlpはPyPIで月間1200万回以上ダウンロードされています。GitHubリポジトリには160,766個のスターがあります。このプロジェクトは、およそ2週間ごとに新しいリリースを出荷しています。執筆時点での最新のタグは`2026.03.17`です。抽出プラグインシステムを通じて1,800以上のビデオおよびオーディオサイトをサポートしています。以下では、yt-dlpとは何か、どのように使用するかについて正直に説明します。さらに、2026年における法的地位、そして完全に動作していたインストールが2025年半ばに突然動作しなくなる理由についても説明します。
yt-dlpの由来:youtube-dlのフォークチェーン
ここでは、動作の差異を説明するために、プロジェクトの系譜が重要になります。yt-dlpはYouTubeの不具合発生から数時間以内に修正プログラムをリリースしますが、youtube-dlでは数週間かかる場合があります。この系譜には3つのプロジェクトが存在し、それぞれの段階は前のプロジェクトへの不満から始まりました。
youtube-dlは元々、2006年8月にRicardo Garcíaによって開発され、その後Philipp Hagemeisterが`ytdl-org/youtube-dl`の下で少数のグループと共に開発を主導しました。2020年までには事実上のアーカイブツールとなっていましたが、プルリクエストが山積みになり、YouTubeの修正が遅れて反映されるという状況でした。
そのギャップから生まれたのがyoutube-dlcで、「c」は「コミュニティ」の略です。`blackjack4494`が2020年にリポジトリをフォークし、マージキューは数日でクリアされました。フォーク自体は同年後半に半ば非アクティブになりました。メンテナーの1人が不安定なためです。
yt-dlpは youtube-dlc からの再フォークです。リポジトリは 2020 年 10 月 26 日に作成されました。これは、上流の youtube-dl が RIAA によって削除されてから 3 日後のことです。yt-dlp は、サポートされている Web サイトからビデオやオーディオをダウンロードできるコマンドライン ツールです。「p」は、初期のリード メンテナー (`pukkandan`) を反映しています。このプロジェクトは現在、`coletdjnz`、`dirkf`、`Grub4K`、`bashonly`、`seproDev` を含むマルチ メンテナー組織によって管理されています。2021 年 1 月までに、yt-dlp は youtube-dlc の貢献者ベースを吸収しました。yt-dlp は youtube-dl の主要なフォークになりました。焦点は、上流でマージされなかった機能と改善に置かれました。
プロジェクトレベルで注目すべき事実がいくつかあります。yt-dlp はカレンダー バージョン管理を使用しているため、`2026.03.17` のようなタグは文字通りリリース日です。ライセンスは The Unlicense で、ほとんどの FOSS プロジェクトでも使用されていない、明示的なパブリック ドメインの献身です。リポジトリには 13,348 のフォークと 2,507 の未解決の問題があります。Ubuntu 22.04 はデフォルトのビデオ ダウンローダーとして youtube-dl を yt-dlp に置き換え、Debian も bookworm でそれに続きました。`supportedsites.md` の supported-sites リストには現在 1,500 を超える名前付きエントリがリストされています。コードベース自体は遅延ロードを備えた 1,800 近い抽出モジュールを出荷しています。Arch、Fedora、NixOS、Homebrew、Chocolatey、Scoop、Winget はすべてこれをパッケージ化しています。年間 20 ~ 30 回のリリースが、ディストリビューションが遅いアップストリームに戻るのを防いでいます。

RIAAによる2020年の削除がyt-dlpを必然的に招いた経緯
RIAAは2020年10月23日にDMCA通知を提出したが、これは米国著作権法第17編第1201条(著作権侵害防止条項)に基づくものだった。RIAAの主張は、youtube-dlがYouTubeの「ローリングサイファー」署名メカニズムを回避したというもので、RIAAはこのメカニズムを著作権で保護された作品へのアクセスを保護する技術的措置と位置付けていた。GitHubは当初これに応じ、リポジトリと17のフォークを削除した。
その後、典型的なストライサンド効果が起こった。開発者たちは、ソースコードをますます独創的な方法で再投稿し、ピクセルカラーでコードベース全体をエンコードしたTwitter画像も公開した。電子フロンティア財団は2020年11月16日にGitHubに書簡を送った。その技術的な主張は単純だった。標準規格に準拠したブラウザであればどれでも実行できる署名は、§1201における「アクセスを効果的に制御する技術的措置」には当たらない。youtube-dlは署名を使用しているが、署名を破っているわけではない。
GitHub は同日中にリポジトリを復元した。また、100 万ドルの開発者保護基金を約束し、今後すべての § 1201 テイクダウンについて手動で技術的および法的レビューを行うことを約束した。この一件が yt-dlp の作成を促した。新しいフォークのリポジトリは、テイクダウンから 3 日後にコミット履歴に現れる。GitHub が撤回するかどうかはまだ誰にもわからなかった。開発者たちは保険を求めていた。
Windows、macOS、Linuxにyt-dlpをインストールする
インストールの後半を忘れてしまい、マージのステップでクラッシュする理由が分からなくなる人がいます。yt-dlp 単体でも、サポートされているサイトから単一のストリームを取得できるのは確かです。しかし、最高のビデオと最高のオーディオ?埋め込みチャプター?mp4 リマックス?それらはすべて `ffmpeg` と `ffprobe` に静かに渡されます。この 2 つをスキップすると、最初の `bv*+ba/b` の試行で意味不明なメッセージが表示されてクラッシュします。ですから、毎回両方をインストールしてください。
Windowsの場合はwingetを使います。`winget install yt-dlp.yt-dlp`を実行してから、`winget install Gyan.FFmpeg`を実行します。Scoopを既に使っている場合はScoopでも大丈夫です。Chocolateyでも構いません。パッケージマネージャーを使うのが面倒な場合は、スタンドアロンの`yt-dlp.exe`がGitHub Releasesにあります。フォルダにドロップして、そのフォルダをPATHに追加すれば完了です。
Macユーザーはもっと簡単な方法があります。`brew install yt-dlp ffmpeg`。たった1行です。さあ、次に進みましょう。
Linux はディストリビューションによって異なります。Debian のメイン アーカイブには同梱されています。Arch は `extra` に保持しています。Fedora は標準チャネルを通じて取得します。問題はタイミングです。YouTube に不具合が発生すると、ディストリビューションのバージョンは数日遅れる傾向があります。回避策は Python のインストールです。これは、修正が適用されたその日に動画をダウンロードする最良の方法です。Python 3.9 以降がインストールされているシステムであれば、`python -m pip install -U yt-dlp` を実行します。このコマンドは、その場でアップグレードも行います。curl と chmod のオプションはまだドキュメントに記載されています (`sudo curl -L https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp -o /usr/local/bin/yt-dlp && sudo chmod +x /usr/local/bin/yt-dlp`) が、パッケージ マネージャーのオプションがない場合にのみ使用してください。
インストール後、`yt-dlp -U` は pip とバイナリのコピーを更新しますが、パッケージマネージャのコピーは意図的にスキップします。インストール方法は1つに絞り、それを使い続けてください。ffmpeg と ffprobe の組み合わせは必須です。
実際に使用する基本的なyt-dlpコマンド
必要最低限の手順は簡潔です。`yt-dlp URL`というコマンドだけで、一般的なケースに対応できます。それ以降は、1つか2つのフラグを追加するだけです。
YouTube 動画を取得する前に、`yt-dlp -F URL` を実行して、利用可能なファイルの種類を確認してください。出力には、抽出ツールが検出したすべての動画フォーマット、すべての音声ストリーム、および事前にマージされたすべてのストリームが、コーデックとファイルサイズとともに一覧表示されます。ほとんどのユーザーは、次に `yt-dlp -f "bv*+ba/b" URL` を実行します。このセレクタは、「最高の動画と最高の音声、2 つのストリームが分離されていない場合は、結合された最高のストリームにフォールバックする」という意味です。これは yt-dlp の代表的なフォーマット選択構文であり、覚えておく価値があります。コンテナを強制するには `--merge-output-format mp4` を追加し、音声のみの場合は `-x --audio-format mp3` を追加します。字幕については、`--write-subs --sub-langs en` で公式の字幕を取得し、`--write-auto-subs` で人間の字幕がない場合は自動生成された字幕にフォールバックします。
リストの場合、`-a urls.txt` は 1 行に 1 つの URL を読み込み、1 回の実行で複数のビデオをダウンロードする標準的な方法です。`--playlist-items 1-10,15,20-` フラグはプレイリストを分割します。また、`--download-archive seen.txt` は完了したダウンロードの記録を保持するため、再実行時に既にダウンロード済みのものはスキップされます。ダウンロード アーカイブは、再ダウンロードせずにプレイリストとチャンネル全体を段階的にダウンロードする最もクリーンな方法です。出力名はテンプレートに従います。文字列 `-o "%(channel)s/%(upload_date>%Y-%m-%d)s — %(title)s.%(ext)s"` は、選択したフォルダーに日付付きのチャンネル グループのファイル名を生成します。結果は Plex および Jellyfin ライブラリに適しています。`-P` フラグは出力先ディレクトリを変更します。`--restrict-filenames` フラグは、ファイルシステム間の安全性を確保するために ASCII を維持します。また、`--print filename` は、ダウンロード処理が開始される前に yt-dlp が書き込む内容をプレビューします。
ダウンロードが「ダウンロードされずに再生される」場合は、yt-dlpがリンクを認識する前にブラウザがリンクを開いてしまっていることが原因です。URLをそのまま引数として渡すか、引用符で囲んで、ターミナルからyt-dlpを実行してください。
パワーユーザー向け機能:ポストプロセッサ、SponsorBlock、Cookie
基本的な機能以外にも、yt-dlpには驚くほど多くの機能が備わっています。以下に挙げるフラグは、実際に使用する際に最も重要なものです。
| カテゴリ | フラグ | 使用 |
|---|---|---|
| 書式設定による並べ替え | `-S "+size,+br,res:1080"` | 1080pではより小さなファイルを優先します |
| 後処理 | `--embed-thumbnail --embed-metadata --embed-chapters --embed-subs` | アートワーク、タグ、チャプター、サブをファイルに焼き込む |
| スポンサーブロック | `--sponsorblock-mark all` / `--sponsorblock-remove sponsor,selfpromo` | YouTube動画のスポンサー部分をマークまたは切り取る |
| 認証 | `--cookies-from-browser firefox` | ブラウザのCookieを使用します。Chrome、Brave、Edge、Safari、Opera、Vivaldi、Chromium、Whaleに対応しています。 |
| ライブ録音 | `--live-from-start --hls-use-mpegts` | 途中参加でも、ライブ配信の開始時点から録画できます。 |
| スピード | `--concurrent-fragments 8` | 並列HLSまたはDASHフラグメントダウンロード |
| 外部ダウンローダー | `--downloader aria2c` | 並列処理のために、ハンド転送をaria2cに渡します。 |
| プラグイン | `~/.yt-dlp/plugins/` | ドロップイン式のカスタム抽出ツールと後処理ツール |
SponsorBlockとの連携は便利です。このオプションはSponsorBlockコミュニティデータベースを利用します。チャプターマーカーにフラグを付けるか、YouTube動画のスポンサーセクションを完全に削除します。`--cookies-from-browser`オプションは、Firefoxコンテナを含むブラウザプロファイルからCookieを読み取ります。これは、有料コンテンツやサインインが必要なコンテンツをダウンロードする最もクリーンな方法です。テラバイト規模の長時間アーカイブの場合、外部ダウンローダーをaria2cに渡すことで、TCPウィンドウがボトルネックとなっているネットワークでのダウンロード速度が著しく向上します。また、`--split-chapters`は動画コンテンツをチャプターごとに個別のファイルに分割します。これは、1つのアップロードで複数の講演をまとめる場合に便利です。yt-dlpは、サイトが複数の動画トラックを提供している場合に動画トラックを結合する`--video-multistreams`もサポートしていますが、これは実際にはまれです。
プラグインシステムについては、独立した項目として説明しておきます。yt-dlpは、`~/.yt-dlp/plugins/`に配置された(または`yt-dlp-plugins`エントリポイントを使用して`pip`でインストールされた)Pythonモジュールを自動的に検出し、エクストラクタまたはポストプロセッサとしてロードします。これにより、通常とは異なるサイトも、アップストリームのパッチを待つことなくサポートされます。また、後述するPoTokenプロバイダプラグインも、この方法で連携します。
2025年から2026年にかけてのPoTokenとSABRの状況
YouTubeは2025年を通してyt-dlpの動作を複雑化させてきた。2つの変更点により、これまで問題なく動作していたインストールが2026年になって突然失敗するようになる可能性がある。
PoToken の方が重要です。現在、すべての動画リクエストには Proof-of-Origin トークンが必要です。このトークンは動画に紐付けられ、有効期限が短く、セッションにも紐付けられています。手動での抽出は数か月前に機能しなくなりました。現在機能しているのは、`bgutil-ytdlp-pot-provider` という小さなヘルパーがバックグラウンドで動作することです。これは必要に応じてトークンを生成し、メインの yt-dlp 呼び出しがそれらを自動的に取得します。yt-dlp wiki には、セットアップ手順を説明する PO Token Guide というガイドがあります。このヘルパーがないと、リクエストはダウングレードされるか、単にブロックされ、30 秒前にブラウザで再生された動画でも yt-dlp が正しく動作しない可能性があります。
SABR は 2 番目の要素です。SABR は YouTube のサーバーサイド適応ビットレートであり、2025 年までに `web` エクストラクタは SABR のみの形式を返すようになり、通常のダウンロード パスが壊れました。修正は通常、extractor-args のヒントとサインインしたブラウザからのクッキーです。修正が成熟する間、注目すべきスレッドは、#12482、#14307、#14390、#16082、および #13968 の問題です。最終的な結果: yt-dlp は、公開されている YouTube コンテンツの大部分でまだ機能しますが、2026 年には、「ただ機能する」コマンドは、代わりに「PoToken プロバイダ、新しいクッキー、および少しの忍耐」コマンドになることがよくあります。

2026年におけるyt-dlpの法的地位:米国、ドイツ、EU
法的な答えは管轄権の問題であり、結論としては、まだ何も決定的に解決されていないということだ。
米国では、yt-dlp に関して裁判所が判決を下した例はありません。2020 年の RIAA の事例が最も近い前例ですが、非司法的な判決で終わりました。米国著作権局の第 9 回 3 年ごとのセクション 1201 最終規則は、2024 年 10 月 28 日に発効し、2027 年 10 月 28 日に期限が到来しました。この規則は、以前の免除を更新し、AI の信頼性研究に関する免除を追加しましたが、個人用ビデオのアーカイブに関する一般的な回避免除は作成しませんでした。セクション 1201 の構造的な問題、つまり意図に関係なく DRM に触れるツールを犯罪とするという問題は依然として残っています。
ドイツでは、ソフトウェアそのものよりもホスティング会社の責任が争点となっている。ハンブルク高等地方裁判所は、2024年11月27日、YouTube-dl.orgをホスティングしているマインツのUberspace社の控訴を棄却した。この判決は、ホスティング会社が回避ツールを宣伝するサイトに対して責任を負う可能性があるとする2023年の下級裁判所の判決を確定させた。この判例はyt-dlpを直接的に違法とするものではないが、回避機能を公然と宣伝するプロジェクトにとって、ドイツでのホスティングはリスクの高いものとなる。
EUレベルでは、デジタルサービス法は通知と措置による削除手続き(第16条~第17条)を標準化していますが、ダウンローダーソフトウェアは規制していません。ホスティング事業者にyt-dlpのブロックを強制するEU全体の規則はありません。これらの管轄区域のいずれにおいても、自分のコンテンツにyt-dlpを個人的に使用することは、法的圧力の対象とはなりません。クリエイターが許可を与えたコンテンツについても同様です。問題は配信とストリーム保護との連携にあります。
GUIフロントエンドとより広範なダウンローダーエコシステム
ターミナルを使いたい人ばかりではないし、yt-dlp のコマンドラインはマーケティング上の強みとは言えない。yt-dlp は数あるビデオダウンローダーの一つだが、ほとんどの最新のビデオダウンローダー GUI の基盤となるエンジンとして使われている。Stacher は最も洗練されたクロスプラットフォーム GUI だ。Tartube は Python/GTK の代替品。yt-dlg は yt-dlp 専用のコミュニティ フォーク。Tube-Archivist はチャンネル アーカイブ用のセルフ ホスト型 Docker サーバーで、スケジュールに基づいてさまざまな Web サイトからビデオをダウンロードできる。YTDL-Material はセルフ ホスト型の Web フロントエンド。ytdl-sub は Plex や Jellyfin のセルフ ホストで人気の宣言型 YAML 設定ツール。JDownloader 2 はプラグインを介して yt-dlp を統合している。各ツールは独自のビデオ選択インターフェースとダウンロード オプション パネルを公開しているが、重労働は yt-dlp が担っている。
| 道具 | ステータス(2026年) | 範囲 | ライセンス |
|---|---|---|---|
| yt-dlp | 毎週リリースされる活発なリリース | 1,800以上の動画/音声サイト | ライセンスなし |
| youtube-dl | 動作が遅い。最終リリースは2021年9月。 | YouTube + 約1,000サイト | ライセンスなし |
| ギャラリー-dl | アクティブ | 画像ギャラリー。動画はyt-dlpで表示できます。 | GPLv2 |
| ストリームリンク | アクティブ | プレーヤーに配信されるライブストリーム | BSD-2 |
クリーンルール:アーカイブダウンロードにはyt-dlp、プレーヤーへのライブ配信にはstreamlink、画像が多いサイトにはgallery-dlを使用する。
安全性:yt-dlpのダウンロード場所と偽物の見分け方
安全なソースは、GitHub Releases、PyPI (`pip install yt-dlp`)、公式配布パッケージ、および主要な Windows パッケージ マネージャー (Winget、Scoop、Chocolatey) のみです。サードパーティの「yt-dlp ダウンローダー」サイトには、アドウェア、マイナー、または改変されたバイナリがバンドルされています。Windows Defender は、過去に PyInstaller でパッケージ化された `yt-dlp.exe` を `Trojan:Win32/Wacatac.B!ml` として検出したことがあります (問題 #7532 および #15415)。これらはヒューリスティックな誤検出です。シグネチャ データベースは通常、数日でクリアされます。yt-dlp のような小規模なオープンソース プロジェクトは、ボランティアのメンテナーによって維持されています。Plisio などのゲートウェイを介した暗号通貨による寄付は、国際的な貢献者がサポートを受けるための、銀行取引に強い方法の 1 つです。
具体的な例を挙げましょう。プレゼンテーション用にYouTube動画をコンピュータにダウンロードしたいとします。コマンドは`yt-dlp -f "bv*+ba/b" --merge-output-format mp4 URL`で、適切なダウンロード形式が得られます。yt-dlpはyoutube-dlよりも多くの抽出ツールを備えたフォークであり、元のツールではダウンロードできない動画もダウンロードできるツールが多数あります。yt-dlpはプラグインシステムを使用してニッチなソースにも対応しており、さまざまなWebサイトから動画をダウンロードする必要がある場合は`-a urls.txt`を使用できます。yt-dlpでサポートされているものはすべて`supportedsites.md`に記載されています。