mcpField
M
music-downloader

music-downloader

github.com/nymboクリエイティブ・メディア1.5k 回インストール
リポジトリ

music-downloader について

music-downloaderは、オンラインプラットフォームから音声を取得するためのスキルです。yt-dlpとspotdlのコマンド例を使い、単曲、プレイリスト、アルバムのダウンロードやメタデータ処理、形式変換を行えます。

主な機能

  1. 01単曲、プレイリスト、アルバムのダウンロード
  2. 02音声の抽出と形式変換
  3. 03メタデータとカバー画像の埋め込み
  4. 04複数の音声リンクの一括処理

活用シーン

  1. 01動画をMP3やOpusに変換
  2. 02タグとカバー画像付きのプレイリストを取得
  3. 03章または時間範囲を指定して音声を抽出

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/nymbo/skills --skill music-downloader

インストール後、Claude Code で/music-downloaderを入力して読み込まれたか確認します。

詳細

音楽ダウンローダー

概要

このスキルでは、yt-dlp と spotdl を使用して、さまざまなプラットフォーム(YouTube、SoundCloud、Spotify など)から高音質の音声をダウンロードできます。単一のトラック、プレイリスト、アルバム向けのコマンドテンプレートのほか、メタデータの埋め込み、サムネイルの抽出、フォーマット変換などの高度な機能も提供します。

ユーザーが曲やプレイリストへのリンクを指定していない場合は、環境内のツールを使ってウェブ検索を行い、ユーザーが探しているものを見つける必要があります。

Web_Search ツールを使用する場合は、検索タイプを videos に設定し、YouTube の公式リンクを優先してください。

このスキルを使用する場面

次のリクエストを受けた場合に、このスキルを使用してください。

  • YouTube、SoundCloud、Spotify、その他のプラットフォームから音声や音楽をダウンロードする
  • 動画から MP3、Opus、その他のフォーマットで音声を抽出する
  • プレイリストやアルバム全体をダウンロードする
  • メタデータやアルバムアート付きの高音質音声を入手する
  • 複数のトラックを一括ダウンロードする
  • 動画コンテンツを音声ファイルに変換する

クイックスタート

最も一般的な用途 — YouTube から MP3 をダウンロード:

yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "%(title)s.%(ext)s" "VIDEO_URL"

Spotify からダウンロード:

spotdl --audio-quality 320k --embed-metadata --output "{artist}/{title}.{ext}" "SPOTIFY_TRACK_URL"

注: 問題が発生した場合は、pip で yt-dlp をインストールまたは更新してみてください:pip install --upgrade yt-dlp

一般的なコマンド

利用可能なフォーマットを一覧表示

yt-dlp -F "URL"

最高音質の MP3 をダウンロード

yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 --postprocessor-args "-b:a 320k" -o "%(title)s.%(ext)s" "https://www.youtube.com/watch?v=xYJki23aeTQ&ab_channel=OnlyRealHipHop49"

基本的な高音質 MP3 ダウンロード

yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "%(title)s.%(ext)s" "VIDEO_URL"

カスタムビットレートでダウンロード

yt-dlp -f bestaudio --extract-audio --audio-format mp3 --postprocessor-args "-b:a 192k" -o "%(title)s.%(ext)s" "VIDEO_URL"

ダウンロードしてメタデータタグを追加

yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 --embed-metadata -o "%(title)s.%(ext)s" "VIDEO_URL"

プレイリスト全体をダウンロード

yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "%(playlist_title)s/%(title)s.%(ext)s" "PLAYLIST_URL"

プレイリストをダウンロード(範囲指定)

yt-dlp --playlist-items 1-5 -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "%(playlist_title)s/%(title)s.%(ext)s" "PLAYLIST_URL"

SoundCloud から高音質でダウンロード

yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "SoundCloud/%(uploader)s - %(title)s.%(ext)s" "SOUNDCLOUD_TRACK_URL"

アルバムアートを自動で埋め込む

yt-dlp -f bestaudio --extract-audio --audio-format mp3 --embed-thumbnail --audio-quality 0 -o "%(title)s.%(ext)s" "VIDEO_URL"

特定のフォーマットでダウンロード

MP3 の代わりに Opus

yt-dlp -f bestaudio --extract-audio --audio-format opus -o "%(title)s.%(ext)s" "VIDEO_URL"

ダウンロード済みのファイルをスキップ

yt-dlp --download-archive "downloaded.txt" -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "%(title)s.%(ext)s" "VIDEO_URL"

複数の個別ファイルをダウンロード

yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 --add-metadata --embed-thumbnail --write-description --postprocessor-args "-b:a 320k" -o "%(title)s.%(ext)s" "https://www.youtube.com/watch?v=xYJki23aeTQ&ab_channel=OnlyRealHipHop49" "https://www.youtube.com/watch?v=xKJaew2gMSo&ab_channel=OnlyRealHipHop49" "https://www.youtube.com/watch?v=zLJkO3RnWUk&ab_channel=OnlyRealHipHop49"

ダウンロードしてチャプターごとに自動分割

yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 --split-chapters -o "%(title)s.%(ext)s" "VIDEO_URL"

動画の一部分のみを抽出(時間指定)

yt-dlp -f bestvideo+bestaudio --external-downloader ffmpeg --external-downloader-args "ffmpeg_i:-ss 00:01:00 -to 00:05:00" -o "%(title)s.%(ext)s" "VIDEO_URL"

既存ファイルのメタデータを更新

yt-dlp --download-archive "downloaded.txt" --skip-download --embed-metadata --embed-thumbnail --write-description "VIDEO_URL"

重複ファイルの名前を自動変更

yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 --force-overwrites -o "%(title)s.%(ext)s" "VIDEO_URL"

URL リストファイルからダウンロード

yt-dlp -a "urls.txt" -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "%(title)s.%(ext)s"

ダウンロード速度を制限してダウンロード

yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 --rate-limit 1M -o "%(title)s.%(ext)s" "VIDEO_URL"

Vimeo からダウンロード

yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "Vimeo/%(uploader)s - %(title)s.%(ext)s" "VIMEO_VIDEO_URL"

Facebook からダウンロード

yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "Facebook/%(uploader)s - %(title)s.%(ext)s" "FACEBOOK_VIDEO_URL"

Instagram からダウンロード

yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "Instagram/%(uploader)s - %(title)s.%(ext)s" "INSTAGRAM_VIDEO_URL"

Twitter からダウンロード

yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "Twitter/%(uploader)s - %(title)s.%(ext)s" "TWITTER_VIDEO_URL"

TikTok からダウンロード

yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "TikTok/%(uploader)s - %(title)s.%(ext)s" "TIKTOK_VIDEO_URL"

Reddit からダウンロード

yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "Reddit/%(uploader)s - %(title)s.%(ext)s" "REDDIT_VIDEO_URL"

Dailymotion からダウンロード

yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "Dailymotion/%(uploader)s - %(title)s.%(ext)s" "DAILYMOTION_VIDEO_URL"

YouTube の文字起こしをテキストとしてダウンロード

yt-dlp --write-auto-subs --sub-lang en --skip-download -o "%(title)s.%(ext)s" "VIDEO_URL"

YouTube の文字起こしを Markdown としてダウンロード

yt-dlp --write-auto-subs --sub-lang en --skip-download --convert-subs srt -o "%(title)s.md" "VIDEO_URL"

動画情報をダウンロードして JSON として保存

yt-dlp --write-info-json --skip-download -o "%(title)s.json" "VIDEO_URL"

ダウンロードせずに利用可能なフォーマットを一覧表示

yt-dlp -F "VIDEO_URL"

年齢制限のある YouTube コンテンツをダウンロード

yt-dlp --username "YOUR_YOUTUBE_EMAIL" --password "YOUR_PASSWORD" -f bestvideo+bestaudio -o "%(title)s.%(ext)s" "AGE_RESTRICTED_VIDEO_URL"

SoundCloud のコマンド

利用可能なフォーマットを一覧表示

yt-dlp -F "URL"

SoundCloud から高音質 MP3 をダウンロード

yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "SoundCloud/%(uploader)s - %(title)s.%(ext)s" "SOUNDCLOUD_TRACK_URL"

SoundCloud から高音質でメタデータ付きでダウンロード

yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 --embed-metadata -o "SoundCloud/%(uploader)s - %(title)s.%(ext)s" "SOUNDCLOUD_TRACK_URL"

SoundCloud からプレイリスト全体をダウンロード

yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "SoundCloud/%(playlist_title)s/%(title)s.%(ext)s" "SOUNDCLOUD_PLAYLIST_URL"

SoundCloud からプレイリスト全体をメタデータ付きでダウンロード

yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 --embed-metadata --add-metadata --embed-thumbnail -o "%(playlist_title)s/%(title)s.%(ext)s" "SOUNDCLOUD_PLAYLIST_URL"

複数のプレイリストをメタデータ付きでダウンロード

yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 --embed-metadata --add-metadata --embed-thumbnail -o "SoundCloud/%(playlist_title)s/%(title)s.%(ext)s" "x" "x" "x" "x" "x" "x" "x"

範囲を指定してプレイリストをダウンロード

yt-dlp --playlist-items 1-5 -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "SoundCloud/%(playlist_title)s/%(title)s.%(ext)s" "SOUNDCLOUD_PLAYLIST_URL"

アルバムアートをダウンロードして埋め込む

yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 --embed-thumbnail -o "SoundCloud/%(uploader)s - %(title)s.%(ext)s" "SOUNDCLOUD_TRACK_URL"

ダウンロード済みの SoundCloud ファイルをスキップ

yt-dlp --download-archive "downloaded_soundcloud.txt" -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "SoundCloud/%(uploader)s - %(title)s.%(ext)s" "SOUNDCLOUD_TRACK_URL"

SoundCloud から複数のトラックをダウンロード

yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "SoundCloud/%(uploader)s - %(title)s.%(ext)s" "SOUNDCLOUD_TRACK_URL_1" "SOUNDCLOUD_TRACK_URL_2" "SOUNDCLOUD_TRACK_URL_3"

SoundCloud のダウンロード速度を制限

yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 --rate-limit 1M -o "SoundCloud/%(uploader)s - %(title)s.%(ext)s" "SOUNDCLOUD_TRACK_URL"

SoundCloud からダウンロードしてチャプターごとに分割(利用可能な場合)

yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 --split-chapters -o "SoundCloud/%(uploader)s - %(title)s.%(ext)s" "SOUNDCLOUD_TRACK_URL"

SoundCloud のトラックをダウンロードして特定の部分を抽出

yt-dlp -f bestaudio --external-downloader ffmpeg --external-downloader-args "ffmpeg_i:-ss 00:01:00 -to 00:05:00" -o "SoundCloud/%(uploader)s - %(title)s.%(ext)s" "SOUNDCLOUD_TRACK_URL"

SoundCloud からダウンロード済みのファイルのメタデータを更新

yt-dlp --download-archive "downloaded_soundcloud.txt" --skip-download --embed-metadata --embed-thumbnail "SOUNDCLOUD_TRACK_URL"

重複する SoundCloud ファイルの名前を自動変更

yt-dlp -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 --force-overwrites -o "SoundCloud/%(uploader)s - %(title)s.%(ext)s" "SOUNDCLOUD_TRACK_URL"

SoundCloud の URL リストファイルからダウンロード

yt-dlp -a "soundcloud_urls.txt" -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 -o "SoundCloud/%(uploader)s - %(title)s.%(ext)s"

SpotifyDL のコマンド

1 曲をダウンロード

spotdl --audio-quality 320k --embed-metadata --output "{artist}/{title}.{ext}" "SPOTIFY_TRACK_URL"

プレイリスト全体をダウンロード

spotdl --playlist "SPOTIFY_PLAYLIST_URL" --audio-quality 320k --embed-metadata --output "{playlist}/{title}.{ext}"

アルバム全体をダウンロード

spotdl --album "SPOTIFY_ALBUM_URL" --audio-quality 320k --embed-metadata --output "{album}/{title}.{ext}"

複数のアルバムとプレイリストを一度にダウンロード

spotdl --playlist "SPOTIFY_PLAYLIST_URL1" "SPOTIFY_PLAYLIST_URL2" --audio-quality 320k --embed-metadata --output "{playlist}/{title}.{ext}"
spotdl --album "SPOTIFY_ALBUM_URL1" "SPOTIFY_ALBUM_URL2" --audio-quality 320k --embed-metadata --output "{album}/{title}.{ext}"

コメント