yt-dlpで最高品質の動画をダウンロードする
音声のみダウンロードする方はこちら
【重要な注意事項】(2026-03-15 追記)
YouTubeの規制強化によりIPアドレス単位でBANされる可能性が上がっています。 用心する場合は-t sleepオプションを使用することも検討してください
このオプションはダウンロードにインターバルを設けるものです
これを設定しないとYouTubeからIPアドレス単位でBANされる可能性が上がります
IPアドレスでBANされた場合、yt-dlpが使えなくなったりログインせずにYouTubeを閲覧できなくなったりします。 もしBANされた上POトークンの回避策もうまく行かなかった場合でも、ブラウザのCookieをyt-dlpに渡すのだけはやめてください。 今度はGoogleアカウントごとBANされるかもしれません
とりあえず最高品質で
yt-dlpで最高品質の動画をダウンロードする場合は、ほとんどのオプションは付ける必要はない code:sh
yt-dlp <URL>
これだけでいい
何もオプションを付けなかった時のデフォルトが-f bestvideo*+bestaudio/bestになっているため
ただし、あらかじめffmpegのパスを通しておかないと、解像度が下がってしまうことがあるので注意 便利なオプション(任意)
必要に応じてオプションをつけよう
--embed-thumbnail
動画ファイルにサムネイルを埋め込む
--embed-subs
動画に字幕を埋め込む
--embed-metadata, --add-metadata
メタデータを動画に埋め込む
デフォルトでは、後述のチャプターやinfojsonも一緒に埋め込む
--no-embed-chaptersや--no-embed-info-jsonを併用することで、埋め込まないように設定可能
--embed-chapters
ただし、チャプターマーカー自体はmpv等の一部の再生アプリでしか対応していないので注意 --embed-info-json
--list-formats、-F
ダウンロード可能な動画形式を一覧を確認する
このオプションが付いている時、動画はダウンロードされない
-f <フォーマット>
ダウンロードする動画や音声のフォーマットを指定できる
動画本体以外もダウンロードするオプション
--write-description
動画の詳細文をテキストファイルとしてダウンロードする
<動画タイトル> [<動画ID>].descriptionというファイル名で保存される
--write-comments
投稿されたコメントをJSON形式でダウンロードする <動画タイトル> [<動画ID>].info.jsonというファイル名で保存される
保存形式のオプション
--merge-output-format
別々にダウンロードした動画ファイルと音声ファイルと合成(マージ)した後の出力形式を指定する
これを指定したからと言って動画や音声のコーデック(動画ファイル内部の保存形式)が再生プレイヤーの対応しているものになるとは限らないので注意 スマホやカーナビなどで再生したい人は後述の「.mp4で保存する」を参照 .mp4に拘りがなければ、以下のコマンドで最も品質の高い動画をダウンロードできる。 ※.mp4に拘りがある場合はページ下部の項目を参照。 code:sh
yt-dlp --embed-thumbnail --embed-subs --embed-metadata -f "bv*+ba/best" --merge-output-format mkv <URL>
.mkvでダウンロードすることによって、高画質(フルHD解像度以上)の動画をほぼ無変換でダウンロードすることができる。 つまり最速でダウンロードが可能。
【2026-03-15 追記内容】
ダウンロードコマンド
code:sh
[ext=*]を指定しない場合でも一応mp4は生成される
ただし動画・音声コーデックがプレイヤー側で対応していないものになる可能性がある
mp4であれば、上記のサムネイル埋め込みや字幕埋め込みなどにも対応している
code:sh
ただし、上のコマンドはフルHD解像度より高い動画を落とせないという欠点がある 2026時点では4K画質であってもmp4形式がサーバーにあればダウンロード可能な場合がある。(昔はなかった)
ダウンロード可能かどうかは以下のコマンドで調査する
code:sh
yt-dlp --list-formats <URL>
4K(2160p)の欄にmp4拡張子が表示されていればダウンロード可能 上記コマンドで4K解像度の動画をダウンロードできなかった場合は、以下のコマンドでダウンロードできる。
code:sh
yt-dlp --recode-video mp4 --embed-thumbnail --embed-subs --embed-metadata <URL>
最高画質の動画をダウンロードした後、.mp4に変換する ffmpegでやることもできる(というかそっちの方がGPUエンコードができるので早い) ただし、サムネイルや字幕などに対応していない形式が挟まれると、それらの埋め込みが外れてしまう可能性がある
途中コンソールが長時間固まるが、エンコードに時間がかかっているだけなので中断しないように気をつけよう
サムネイル等を捨てて手っ取り早く4K mp4の動画を入手したい人向け
そうでない人は通常と時間は変わらないので、素直にyt-dlpのみで変換をかけたほうが良い AMD Radeon GPUに対応したオプションもあるかもしれないけれど、Mijikko.iconは知らない code:sh
yt-dlp -f "bv,ba" -o "%(title)s %(id)s %(format)s.%(ext)s" <URL> デフォルトのままだと動画と音声でファイル名がダブることがあったので、それを解消するために-oオプションでファイル名の形式を指定している
code:sh
ffmpeg -i "<動画ファイル名>" -i "<音声ファイル名>" -vcodec hevc_nvenc <出力するファイルの名前>.mp4
参考