media-downloader について
media-downloaderは、オンラインの動画や音声を保存したい人向けのyt-dlpベースのスキルです。形式、字幕、プレイリスト、出力ファイル名などの設定を扱います。
主な機能
- 011,500以上のサイトからメディアをダウンロード
- 02解像度と出力形式の選択
- 03手動字幕と自動字幕の取得
- 04プレイリストや指定項目の処理
- 05出力ファイル名テンプレートの設定
活用シーン
- 01指定した解像度で動画を保存
- 02選択した言語の字幕付きで保存
- 03プレイリストの指定項目を一括取得
- 04投稿者名や日付でファイルを整理
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ dp-archive/ archive --skill media-downloaderインストール後、Claude Code で/media-downloaderを入力して読み込まれたか確認します。
同梱ファイルscripts/download.py
詳細
メディアダウンローダー
yt-dlp を使用して、1500 以上のウェブサイトから動画や音声をダウンロードできます。形式の選択、字幕、プレイリスト、出力ファイル名のカスタマイズに対応しています。
クイックスタート
# Basic download (best quality)
yt-dlp "URL"
# Specific resolution
yt-dlp -f "bestvideo[height<=1080]+bestaudio/best[height<=1080]" "URL"
# With subtitles
yt-dlp --write-subs --sub-langs "en,zh" "URL"
# Audio only
yt-dlp -f "bestaudio" "URL"
形式の選択
解像度のプリセット
| リクエスト | コマンド |
|---|---|
| 最高画質 | -f "bestvideo+bestaudio/best" |
| 4K | -f "bestvideo[height<=2160]+bestaudio/best" |
| 1080p | -f "bestvideo[height<=1080]+bestaudio/best" |
| 720p | -f "bestvideo[height<=720]+bestaudio/best" |
| 480p | -f "bestvideo[height<=480]+bestaudio/best" |
利用可能な形式の一覧表示
yt-dlp -F "URL" # Show all formats with codes
高度な形式の選択
# Prefer MP4 container
yt-dlp -f "bestvideo[ext=mp4]+bestaudio[ext=m4a]/best[ext=mp4]/best" "URL"
# Specific format code (from -F output)
yt-dlp -f 137+140 "URL"
# Merge to specific container
yt-dlp --merge-output-format mkv "URL"
字幕
字幕のダウンロード
# Manual subtitles (human-created)
yt-dlp --write-subs --sub-langs "en,zh,ja" "URL"
# Auto-generated subtitles
yt-dlp --write-auto-subs --sub-langs "en" "URL"
# Both manual and auto
yt-dlp --write-subs --write-auto-subs --sub-langs "en,zh" "URL"
# Embed subtitles in video (MP4/MKV/WebM)
yt-dlp --write-subs --embed-subs "URL"
利用可能な字幕の一覧表示
yt-dlp --list-subs "URL"
字幕の形式
# Convert to SRT
yt-dlp --write-subs --sub-format srt "URL"
# Available: srt, ass, vtt, lrc
出力ファイル名
テンプレート変数
| 変数 | 説明 | 例 |
|---|---|---|
%(title)s | 動画のタイトル | My Video |
%(id)s | 動画 ID | dQw4w9WgXcQ |
%(ext)s | ファイル拡張子 | mp4 |
%(upload_date)s | アップロード日 | 20231215 |
%(uploader)s | チャンネル名 | Rick Astley |
%(playlist)s | プレイリスト名 | Best Songs |
%(playlist_index)s | プレイリスト内の位置 | 01 |
%(resolution)s | 動画の解像度 | 1920x1080 |
一般的なパターン
# Default: title + extension
yt-dlp -o "%(title)s.%(ext)s" "URL"
# Date prefix
yt-dlp -o "%(upload_date)s - %(title)s.%(ext)s" "URL"
# Organized by uploader
yt-dlp -o "%(uploader)s/%(title)s.%(ext)s" "URL"
# Playlist with numbering
yt-dlp -o "%(playlist)s/%(playlist_index)02d - %(title)s.%(ext)s" "URL"
# Sanitize title (remove special chars)
yt-dlp -o "%(title).100B.%(ext)s" "URL" # Limit to 100 bytes
プレイリストの処理
# Download entire playlist
yt-dlp "PLAYLIST_URL"
# Only video (not playlist)
yt-dlp --no-playlist "URL"
# Specific items (1-indexed)
yt-dlp -I 1:5 "PLAYLIST_URL" # First 5
yt-dlp -I 1,3,5 "PLAYLIST_URL" # Items 1, 3, 5
yt-dlp -I -3: "PLAYLIST_URL" # Last 3
# Skip already downloaded
yt-dlp --download-archive downloaded.txt "PLAYLIST_URL"
プラットフォーム固有の注意事項
YouTube
- 対応コンテンツ:動画、プレイリスト、チャンネル、ショート動画、ライブ配信
- 年齢制限付きまたはメンバー限定のコンテンツでは、Cookie が必要になる場合があります
Bilibili
- プレミアムコンテンツには
--cookies-from-browserを使用してください - 字幕:
--write-subs --sub-langs "zh-Hans"
TikTok / Douyin
- URL を指定して直接ダウンロードできます
- 場合によってはウォーターマークが含まれることがあります
Twitter/X
- 動画付きツイートとスペースに対応しています
- 非公開コンテンツには
--cookies-from-browserを使用してください
- ストーリーズのダウンロードにはログインが必要です
--cookies-from-browser firefoxまたは--cookies cookies.txtを使用してください
認証
# Browser cookies (recommended)
yt-dlp --cookies-from-browser firefox "URL"
yt-dlp --cookies-from-browser chrome "URL"
# Cookie file
yt-dlp --cookies cookies.txt "URL"
# Username/password (limited support)
yt-dlp -u USERNAME -p PASSWORD "URL"
トラブルシューティング
よくある問題
| 問題 | 解決方法 |
|---|---|
| "Video unavailable" | --cookies-from-browser を試してください |
| ダウンロードが遅い | --concurrent-fragments 4 を追加してください |
| 形式の結合に失敗する | ffmpeg をインストールしてください |
| 地域制限 | --geo-bypass またはプロキシを使用してください |
yt-dlp の更新
yt-dlp -U # Update to latest stable
使用例
中国語字幕付きで YouTube 動画を 1080p でダウンロードする:
yt-dlp -f "bestvideo[height<=1080]+bestaudio/best" \
--write-subs --sub-langs "zh" \
-o "%(title)s.%(ext)s" \
"https://youtube.com/watch?v=..."
TikTok 動画をダウンロードする:
yt-dlp -o "%(uploader)s - %(title)s.%(ext)s" \
"https://tiktok.com/@user/video/..."
Bilibili のプレイリストをダウンロードする:
yt-dlp --cookies-from-browser chrome \
-o "%(playlist)s/%(playlist_index)02d - %(title)s.%(ext)s" \
"https://bilibili.com/video/BV..."
Twitter 動画をダウンロードする:
yt-dlp --cookies-from-browser firefox \
"https://twitter.com/user/status/..."
コメント
Markdown 対応