本文へスキップ
yt-dlp

yt-dlp で YouTube を MP3 に

YouTube の動画を、タグとカバー画像の付いた MP3 に変える yt-dlp コマンドを組み立てます。

使える MP3 を得るために

音声の抽出は変換なので ffmpeg が必須です —— 入れたばかりの環境でコマンドが失敗する理由はこれです。最良(VBR)が正しい既定値です:サイズと品質の比がいちばん良く、固定 bitrate を上げても、元になかった品質は増えません。

カバー画像とメタデータは、名前のないファイルが詰まったフォルダを、音楽プレイヤーが整理できるものに変えます。ここのテンプレートはアーティストを先に置き、タグにアーティストがなければ投稿者名で代用します。

--audio-quality 0 はいちばん誤解されやすい設定です。「品質ゼロ」ではありません。可変ビットレートで最も良い設定で、平均するとおよそ 245 kbps、しかも目盛りは逆向きです。0 が最良で 9 が最低。可変ビットレートは音が詰まった箇所により多くのビットを割き、静かな箇所では削るので、同じサイズなら VBR のほうが固定ビットレートより良く聞こえるのが普通です。固定でないと受け付けない機器があるなら、0〜9 の目盛りで数字を当てにいくのではなく、--audio-quality 320K のように名指しで指定してください。

もっと大事なのは、そもそも変換すべきかどうかです。YouTube が配信する音声は Opus か AAC で、どちらも MP3 ではありません。つまり MP3 を求めるということは必ず再エンコードするということです。ファイルは一度デコードされ、二度目の圧縮を受け、そのたびに少しずつ品質が落ちます。手元のどれかが .mp3 という拡張子そのものを要求しているのでなければ、「最高(変換しない)」を選んでください。速く、ffmpeg も一切不要で、結果はどんな MP3 よりも元の音に近くなります。カーオーディオ、DJ ソフト、古い携帯——選択肢がないときにだけ変換してください。

プレイリストごと落とすなら、プレイリストを有効にしてアーカイブファイルを足します。アーカイブは取得済みのものを記録するので、来週また同じコマンドを流しても最初からやり直さず新しい分だけを拾います。「エラーでも続行」と組み合わせれば、地域制限や削除された一曲が残り二百曲を道連れにすることもなくなります。曲順が大事なら出力テンプレートにプレイリスト番号を入れてください。入れないとプレイヤーはフォルダをアルファベット順に並べ、アルバムの曲順が崩れます。

任意です。空のままにするとコマンドは URL で終わるので、あとから自分で埋められます。

あなたのコマンド

yt-dlp -x --audio-format mp3 --audio-quality 0 --no-playlist --embed-thumbnail --embed-metadata -o '%(artist,uploader)s - %(title)s.%(ext)s' 'https://www.youtube.com/watch?v=dQw4w9WgXcQ'
基本

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

音声

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

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

再生リストとチャンネル

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

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

詳細オプション(1)

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

メタデータとカバー画像
詳細オプション(3)
ファイルとフォルダ

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

詳細オプション(4)

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

ファイル名の最大長(文字数)です。

回避策
詳細オプション(3)

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

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

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

リセット

よくある質問

MP3 の品質はどれを選ぶべき?
ほとんどの場合は最良(VBR)—— サイズと品質の比がいちばん良いからです。320 kbps が意味を持つのは、後の工程が固定 bitrate を要求する場合だけです。どちらも元になかった品質を足しはしません。
MP3 の抽出が失敗するのはなぜ?
音声の変換には ffmpeg が必要です。入れてから ffmpeg -version で確認してください。
VBR と固定 bitrate、どちら?
VBR は必要なところにビットを使うので、同じ聞こえ方でサイズが小さくなります。固定 bitrate は機器やソフトが要求する場合にだけ使ってください。
再生リスト全体を MP3 に変換できますか?
できます —— 音声出力と再生リスト全体モードの組み合わせです。記録ファイルも足せば、再実行で変換をやり直しません。