January 02, 2021

YouTube の HD・4K・8K動画を youtube-dl を使ってダウンロードする

event_noteJanuary 02, 2021

ここでは Windows 向けのオープンソースのコマンドラインツールである、youtube-dl FFmpegを使って、YouTube のHD(1080p)・4K(2160p)・8K(4320p)動画 をダウンロードする手順について見ていきます。
この記事で使用している youtube-dl のバージョンは 2020.12.31 で、FFmpeg のバージョンは 2020-12-27 です。

執筆時点(2020.1.1)においては、このツールを使って、Twitter、TVer、Vimeoといったサイトの動画もダウンロードすることができましたが、今後の仕様変更によりダウンロードできなくなる可能性が高いと思われます (対応しているサイト一覧はこちら)。youtube-dlの最新版を使ってもダウンロードできない場合は、参考程度にご覧いただければと思います。

必要となるファイルの準備

FFmpeg のダウンロード

Support for https://www.gyan.dev/ffmpeg. Contribute to GyanD/codexffmpeg development by creating an account on GitHub.

リンク先のページにある、FFmpeg の最新版のAssetsをクリックし、full_build.7zまたはfull_build.zipをダウンロードして、CドライブやDドライブのルートディレクトリなどに展開し、フォルダ名を短めのffmpegなどの任意の名前に念のため変更しておきましょう。

youtube-dl のダウンロード

Command-line program to download videos from YouTube.com and other video sites - ytdl-org/youtube-dl

リンク先のページにある、youtube-dl最新版のAssetsの中から、youtube-dl.exeをダウンロードして、先ほど展開したffmpegのフォルダの中にあるbinフォルダに配置します。

バッチファイルのダウンロード

毎回コマンドプロンプトなどにコマンドを入力する手間を省くため、処理をある程度自動化するバッチファイルを作成しましたので以下よりダウンロードください。

ytdl-batch.zipをダウンロードしたら、中にある4つの.batファイルをffmpegのフォルダの中にあるbinフォルダに配置します。

binフォルダの中に ffmpeg.exe、youtube-dl.exe、4つのバッチファイルがそろったら準備完了です。

動画のダウンロード方法

youtube-dl-Checker.bat の使い方

ここでは例として、Youtube でクリエイティブコモンズライセンスにて公開されている The Space Archiveのこちらの8K動画をダウンロードしたいと思います。

まずは YouTube の動画のアドレス(例えば、https://www.youtube.com/watch?v=eY6yL0HLM7c)をコピーし、binフォルダにあるyoutube-dl-Checker.batをダブルクリックで開き、出現した黒い画面に右クリックからURLを貼り付け、Enterキーで実行ください。

もしも、下のようなエラーが出た場合は

MSVCR100.dll が見つからないため、コードの実行を続行できません。

こちらから Microsoft Visual C++ 2010 再頒布可能パッケージ (x86) を入手しインストールすると動くようになるかもしれません。

通常は以下のような画面が出現すると思います。

ここで例えば、解像度が 854x428 の mp4 の映像と m4a の音声をダウンロードし、映像と音声をまとめて mp4 として保存する場合は、画面一番下のformat code:の欄に135+140と入力しEnterキーで実行するとダウンロード処理が開始されます。format code は 画面左端にある数字(サイトによっては英数字)のことで、映像と音声を両方ダウンロードする場合は、先に映像のformat codeを入力後、半角の+でつなぎ、音声のformat codeを入力ください。

MEMO

もしもこの画面で webm の動画をダウンロードしたい場合は こちら をご覧ください。

format code を何も入力せずにEnterキーを押すと別のURLをチェックできます。

youtube-dl-mp4-bestvideo.bat の使い方

binフォルダにあるyoutube-dl-mp4-bestvideo.batをダブルクリックし、動画ページのURLを入力して実行すると、入手可能な mp4 の映像と m4a の音声の中で、最も高画質・高音質なものを自動選択してダウンロードし、映像と音声をマージします。

上の例だと、解像度が 1920x960 の mp4 の映像と m4a の音声が選択されます。

youtube-dl-webm-bestvideo.bat の使い方

binフォルダにあるyoutube-dl-webm-bestvideo.batをダブルクリックし、動画ページのURLを入力して実行すると、入手可能な webm の映像と webm の音声の中で、最も高画質・高音質なものを自動選択してダウンロードし、映像と音声をマージします。

上の例だと、解像度が 8192x4096 (8K) の webm の映像と webm の音声が選択されます。4K・8K の映像は mp4 ではなく webm として入手可能な動画が多く、1080p を超える映像のダウンロードの場合のみこちらを使うのが良いかもしれません。

youtube-dl-m4a-bestaudio.bat の使い方

binフォルダにあるyoutube-dl-m4a-bestaudio.batをダブルクリックし、動画ページのURLを入力して実行すると、m4a の音声ファイルのみをダウンロードします。

テキストファイルのリストからまとめてダウンロードする

  • youtube-dl-mp4-bestvideo.bat
  • youtube-dl-webm-bestvideo.bat
  • youtube-dl-m4a-bestaudio.bat

の3つは、エクスプローラーのバッチファイルのアイコンにテキストファイル (.txt) をドラッグ&ドロップすることができます。

以下のような形でメモ帳などのテキストエディタにリストを作成し、保存した .txtファイル をバッチファイルのアイコンに放り込むと、リストの上から順番に自動でダウンロード処理を行います。

各種設定・処理の書き換え

バッチファイルを右クリックし、編集からバッチファイルの中身の確認・書き換えが行えます。変更を保存する場合は、ファイル上書き保存をすればOKです。

動画の保存先を変更するには

デフォルトでは FFmpeg のbinフォルダに動画を保存するようになっています。これを変更したい場合は、バッチファイルを右クリック、編集から開き、5行目の

set OUTDIR=%cd%

を書き換えます。例えば、ユーザーのダウンロードフォルダに保存されるようにしたい場合は

set OUTDIR=C:\Users\%USERNAME%\Downloads

として、上書き保存を行ってください。

動画の保存名の形式を変更するには

デフォルトでは 動画タイトル-動画ID.拡張子(mp4) というようなファイル名で保存されるようになっています。動画IDが必要ない場合は、バッチファイル6行目の

set FILENAME=%%(title)s-%%(id)s.%%(ext)s

set FILENAME=%%(title)s.%%(ext)s

に書き換え、バッチファイルを上書き保存してください。また動画タイトルや動画ID以外にも、ファイル名にいろいろと情報を付け加えることもできます。詳しくは youtube-dl の公式ドキュメントの OUTPUT TEMPLATE の欄をご覧ください。

Command-line program to download videos from YouTube.com and other video sites - ytdl-org/youtube-dl

youtube-dl-Checker.bat から webm の動画をダウンロードしたいときは

youtube-dl-Checker.bat のデフォルトの設定では 映像と音声を mp4 で統合するため、webm の映像や音声が含まれている場合、エラーとなってしまいます。webm の映像と音声を統合したい場合は、youtube-dl-Checker.bat のファイルアイコンを右クリックして、編集からファイルを開き、6行目の

set MOFEXT=mp4

set MOFEXT=webm

と書き換えて上書き保存後、youtube-dl-Checker.bat を実行ください。
映像と音声の相性を気にせずに、ともかく一つのファイル(コンテナ)にまとめたいという場合は、

set MOFEXT=mkv

としても良いかもしれません。.mkv や .webm ファイルの再生には、MPC-BE というオープンソースのメディアプレーヤーが個人的におすすめです(シーク速度が高速で、見たい場面を探しやすい)!

Media Player Classic - BEは、自由でオープンソースなWindows用オーディオおよびビデオ プレーヤーです。 Media Player Classic - BEは、オリジナルのMedia Player Classic (Gabest)プロジェクトとMedia Player Classic Home Cinemaプロジェクト (Casimir666)をベースとし...