ここでは Windows 向けのオープンソースのコマンドラインツールである、youtube-dlと FFmpegを使って、YouTube のHD(1080p)・4K(2160p)・8K(4320p)動画
をダウンロードする手順について見ていきます。
この記事で使用している
youtube-dl のバージョンは 2020.12.31 で、FFmpeg のバージョンは 2020-12-27
です。
執筆時点(2021.1.1)においては、このツールを使って、Twitter、TVer、Vimeoといったサイトの動画もダウンロードすることができましたが、今後の仕様変更によりダウンロードできなくなる可能性が高いと思われます (対応しているサイト一覧はこちら)。yt-dlp の最新版を使ってもダウンロードできない場合は、参考程度にご覧いただければと思います。
必要となるファイルの準備
FFmpeg のダウンロード
リンク先のページにある、FFmpeg の最新版のAssetsをクリックし、full_build.7zまたはfull_build.zipをダウンロードして、CドライブやDドライブのルートディレクトリなどに展開し、フォルダ名を短めのffmpegなどの任意の名前に念のため変更しておきましょう。
youtube-dl のダウンロード
リンク先のページにある、youtube-dl最新版のAssetsの中から、youtube-dl.exeをダウンロードして、先ほど展開したffmpegのフォルダの中にあるbinフォルダに配置します。
(5.4.2022追記) YouTube 動画のダウンロード速度が遅い場合は
youtube-dlの派生版のyt-dlpを使うことでダウンロード速度が改善するかもしれません。リンク先のAssetsの中にあるyt-dlp.exeをダウンロードください。
yt-dlp用のバッチファイルは こちら からダウンロードできます。中にある4つの.batファイルとyt-dlp.exeをffmpegのフォルダの中にあるbinフォルダに配置してください。yt-dlp.exeを使ってダウンロードを行う場合はyt-dlpから始まるバッチファイルを使用ください。使い方は、youtube-dl.exeを用いる以下の場合とほぼ同じです。
バッチファイルのダウンロード
毎回コマンドプロンプトなどにコマンドを入力する手間を省くため、処理をある程度自動化するバッチファイルを作成しましたので以下よりダウンロードください。
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キーで実行ください。
もしも、下のようなエラーが出た場合は
こちらから 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 の使い方
mp4 動画を自動でダウンロードしたい場合はこちらの方法がおすすめです。
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 の欄をご覧ください。
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 というオープンソースのメディアプレーヤーが個人的におすすめです(シーク速度が高速で、見たい場面を探しやすい!)