本文へスキップ
yt-dlp

yt-dlp オプション一覧

yt-dlp 2026.07.21 を基準に書かれています。バージョン間でオプションの追加や改名があるため、yt-dlp --version で自分のバージョンを確認してください。

基本

何が欲しいか

音声のみを選ぶと音声トラックを取り出し、映像は捨てます。

動画と画質

-f FORMAT --format

最大画質

高さの上限を決めます。yt-dlp はその上限以下で最良のストリームを選びます。

-f FORMAT --format

独自の format selector

画質のプルダウンを上書きします。format の書き方をすでに知っている人向けです。

  • -f "bv*[vcodec^=av01]+ba"
  • -f "b[filesize<50M]"

Container

分かれている映像と音声のストリームを結合して入れるファイル形式です。

--remux-video FORMAT ffmpeg が必要

remux 先

再エンコードせず入れ直すだけです。速く、劣化もありません。

--recode-video FORMAT ffmpeg が必要

再エンコード先

映像を再エンコードします。遅く、劣化もします —— remux で足りないときだけ使ってください。

音声

--audio-format FORMAT ffmpeg が必要

音声フォーマット

音声を変換する先のファイル形式です。

--audio-quality QUALITY ffmpeg が必要

音声品質

VBR はサイズと品質の比がいちばん良く、固定 bitrate はサイズが読みやすいです。

字幕

字幕

埋め込みは字幕を動画の中に入れ、保存は隣に別の .srt ファイルを書き出します。

字幕の言語

カンマ区切りで指定します。利用できる全言語が欲しいときは all と書きます。

  • --sub-langs "en,vi"
  • --sub-langs "en.*,ja"
  • --sub-langs all

自動生成の字幕

人が付けた字幕がないとき、機械生成の字幕も対象に含めます。

再生リストとチャンネル

再生リストの扱い

URL が動画と再生リストの両方に属している場合の動作です。

-I ITEM_SPEC --playlist-items

どの項目か

範囲もリストも使えます。たとえば 1-10,15、あるいは末尾から 1 つ飛ばしで取る -5::2 など。

  • -I 1:5
  • -I "1,3,7-10"
  • -I "-5::2"

記録ファイル

ダウンロード済みの項目を記録するので、再実行時にはそれらを飛ばします。チャンネルを同期させ続ける方法がこれです。

区間とチャプター

一部だけダウンロード

*00:01:30-00:03:00 のような時間範囲、またはチャプター名です。先頭のアスタリスクは時刻であることを示します。

  • --download-sections "*00:01:30-00:03:00"
  • --download-sections "intro"
--split-chapters ffmpeg が必要

チャプターごとに分割

長い 1 ファイルではなく、チャプターごとに 1 ファイル書き出します。

メタデータとカバー画像

--embed-thumbnail ffmpeg が必要

サムネイルを埋め込む

動画のサムネイルをカバー画像として使います。

--embed-metadata ffmpeg が必要

メタデータを埋め込む

タイトル・投稿者・日付をファイル自体に書き込みます。

--embed-chapters ffmpeg が必要

チャプターを埋め込む

プレイヤーで飛べるチャプターマークを追加します。

サムネイルを別ファイルで保存

カバー画像を動画の隣に書き出します。

メタデータ JSON を保存

yt-dlp がその動画について知っていることすべてを .info.json に書き出します。

SponsorBlock

区間を削除

SponsorBlock のデータをもとに、コミュニティが印を付けた区間をファイルから切り取ります。

区間をチャプターとして印付け

区間は残したまま印を付けるので、自分で飛ばせます。

ファイルとフォルダ

ファイル名テンプレート

フィールド名は %(...)s の中に書きます。スラッシュはフォルダを作ります。

  • -o "%(title)s.%(ext)s"
  • -o "%(playlist_index)02d - %(title)s.%(ext)s"

ダウンロード先フォルダ

ファイルを書き出す場所です。上のテンプレートと組み合わせるとサブフォルダも作れます。

安全な(ASCII のみの)ファイル名

アクセント記号・空白、そして気難しいファイルシステムが拒みそうな文字を落とします。

Windows で安全なファイル名

別のシステムで動かしている場合でも、Windows が受け付けない文字を除きます。

既存のファイルを上書き

すでにあるファイルを置き換えます。

-w --no-overwrites

上書きしない

すでにダウンロード済みのものは飛ばします。

-c --continue

途中のダウンロードを再開

中断したところから続けます。

フィルタ

これ以降に投稿

YYYYMMDD、または now-1month のような相対日付です。

  • --dateafter 20240101
  • --dateafter now-1month

最小サイズ

これより小さいものは飛ばします。5M、500K などが使えます。

ネットワーク

-r RATE --limit-rate

速度制限

たとえば 2M や 500K。残りの帯域を他のことに使いたいときに役立ちます。

-N N --concurrent-fragments

並列 fragment 数

分割されたストリームを速くします。まずは 4 くらいが妥当です。

-R RETRIES --retries

リトライ回数

失敗した部分を何回やり直すか。infinite も指定できます。

地域制限を回避

リクエストの発信元を偽装します。一部のサイトでは有効ですが、すべてではありません。

ブラウザに偽装

リクエストを実際のブラウザからのものに見せます。突然 403 が出たときの定番の対処です。

ログインと cookies

cookies ファイル

ブラウザから書き出した Netscape 形式の cookies.txt です。

ライブ配信

配信の最初から録る

現在の時点ではなく、ライブ配信の最初から録画します。

配信の開始を待つ

予定されている配信が始まるまで問い合わせ続けます。MIN-MAX は確認の間隔(秒)です。

回避策

--user-agent UA 非推奨 — --add-headers

User agent

非推奨で、--add-headers に置き換わりました。古い解説記事がまだ多く使っているので残してあります。

--referer URL 非推奨 — --add-headers

Referer

非推奨で、--add-headers に置き換わりました。

extractor の引数

サイトごとの専用オプションです。たとえば youtube:player_client=web。

  • --extractor-args "youtube:player_client=web,android"

出力とデバッグ

-i --ignore-errors

エラーでも続行

失敗した項目を飛ばして止まりません。大きな再生リストでは欠かせません。

-F --list-formats

フォーマット一覧だけ表示

利用できるフォーマットを出力して、ダウンロードせずに終了します。

-s --simulate

シミュレート

ファイルを書き出す以外のすべてを行います。