コマンド
最高画質&最高音質を自動的に選択してmp4にマージするコマンドです。動作にはffmpegも必要です。
youtube-dl -f bestvideo[ext=webm]+bestaudio[ext=webm] --merge-output-format webm --recode-video mp4 <動画URL>
以前掲載していたコードでは最近エラーになります。
youtube-dl -f bestvideo+bestaudio --merge-output-format mp4 <動画URL>
コマンドの解説
(基本)動画をダウンロードする
オプションを何も指定しない場合、youtube-dlが勝手に画質を判断してダウンロードします。最高画質にならない場合が多い点に注意しましょう。
youtube-dl <動画URL>
画質リストを取得する
URLで指定した動画のフォーマットリストを確認できるコマンドです。
youtube-dl -F <動画URL>
出力例:
[info] Available formats for <動画ID>:
format code extension resolution note
249 webm audio only tiny 47k , webm_dash container, opus @ 47k (48000Hz), 1.28MiB
250 webm audio only tiny 58k , webm_dash container, opus @ 58k (48000Hz), 1.59MiB
251 webm audio only tiny 111k , webm_dash container, opus @111k (48000Hz), 3.01MiB
140 m4a audio only tiny 129k , m4a_dash container, mp4a.40.2@129k (44100Hz), 3.49MiB
278 webm 256x144 144p 90k , webm_dash container, vp9@ 90k, 30fps, video only, 2.45MiB
160 mp4 256x144 144p 98k , mp4_dash container, avc1.4d400c@ 98k, 30fps, video only, 2.66MiB
242 webm 426x240 240p 175k , webm_dash container, vp9@ 175k, 30fps, video only, 4.73MiB
133 mp4 426x240 240p 211k , mp4_dash container, avc1.4d4015@ 211k, 30fps, video only, 5.71MiB
243 webm 640x360 360p 301k , webm_dash container, vp9@ 301k, 30fps, video only, 8.14MiB
134 mp4 640x360 360p 419k , mp4_dash container, avc1.4d401e@ 419k, 30fps, video only, 11.31MiB
244 webm 854x480 480p 513k , webm_dash container, vp9@ 513k, 30fps, video only, 13.86MiB
135 mp4 854x480 480p 771k , mp4_dash container, avc1.4d401f@ 771k, 30fps, video only, 20.79MiB
247 webm 1280x720 720p 958k , webm_dash container, vp9@ 958k, 30fps, video only, 25.84MiB
136 mp4 1280x720 720p 1504k , mp4_dash container, avc1.64001f@1504k, 30fps, video only, 40.57MiB
248 webm 1920x1080 1080p 1647k , webm_dash container, vp9@1647k, 30fps, video only, 44.42MiB
137 mp4 1920x1080 1080p 2942k , mp4_dash container, avc1.640028@2942k, 30fps, video only, 79.34MiB
18 mp4 640x360 360p 513k , avc1.42001E, 30fps, mp4a.40.2 (44100Hz), 13.85MiB
22 mp4 1280x720 720p 1632k , avc1.64001F, 30fps, mp4a.40.2 (44100Hz) (best)
画質を指定してダウンロードする
今度は小文字のfですのでお間違いなく。
動画と音声両方を指定する場合は「+」で繋げます。「bestvideo+bestaudio」で最高画質&最高音質を指定できます。
youtube-dl -f <フォーマットコード> <動画URL>
動画と音声をマージする
そのままだと動画と音声が別々にダウンロードされるので、結合するコマンドです。動作には同ディレクトリにffmpegを置く必要があります。
youtube-dl -f <フォーマットコード> --merge-output-format <フォーマット> <動画URL>