mcpField
V
video-download

video-download

github.com/calesthioクリエイティブ・メディア72.7k1.2k 回インストール今日更新
リポジトリ

video-download について

video-download は、yt-dlp で URL から動画や音声を取得するスキルです。コマンドラインでのダウンロード向けで、画質、字幕、メタデータ、保存先を指定できます。

主な機能

  1. 01画質を指定した動画取得
  2. 02音声の MP3 抽出
  3. 03字幕または字幕のみの取得
  4. 04メタデータと形式の確認
  5. 05ファイル名と保存先の指定

活用シーン

  1. 01URL の動画をオフライン視聴用に保存
  2. 02動画から MP3 音声を抽出
  3. 03参照用の字幕を取得
  4. 04ダウンロード前に動画情報と形式を確認

インストール

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

$npx skills add https://github.com/calesthio/openmontage --skill video-download

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

詳細

video-download

yt-dlp を直接使用して URL から動画や音声をダウンロードします。ラッパースクリプトは不要です。

前提条件

  • yt-dlp:brew install yt-dlp または pip install yt-dlp
  • ffmpeg:brew install ffmpeg または apt install ffmpeg(動画と音声のストリームを結合するために必要です)

サイトの変更に対応できるよう、yt-dlp は定期的に更新してください:yt-dlp -U または pip install -U yt-dlp。

コマンド

最高画質でダウンロード
yt-dlp "URL" -o "%(title)s.%(ext)s" --merge-output-format mp4
特定の解像度でダウンロード
# 720p
yt-dlp "URL" -f "bestvideo[height<=720]+bestaudio/best[height<=720]" --merge-output-format mp4

# 1080p
yt-dlp "URL" -f "bestvideo[height<=1080]+bestaudio/best[height<=1080]" --merge-output-format mp4
音声のみ
yt-dlp "URL" -x --audio-format mp3 --audio-quality 0
字幕をダウンロード
# Download video with English subtitles
yt-dlp "URL" --write-subs --sub-langs en --merge-output-format mp4

# Download video with multiple subtitle languages
yt-dlp "URL" --write-subs --sub-langs "en,es,fr" --merge-output-format mp4

# Download only subtitles (no video)
yt-dlp "URL" --write-subs --sub-langs en --skip-download
メタデータを取得(ダウンロードなし)
yt-dlp "URL" --dump-json --no-download
利用可能なフォーマットを一覧表示
yt-dlp "URL" -F
出力ディレクトリを指定
yt-dlp "URL" -o "./downloads/%(title)s.%(ext)s" --merge-output-format mp4

画質プリセット

画質フォーマットフラグ
最高-f "bestvideo+bestaudio/best"(デフォルト)
1080p-f "bestvideo[height<=1080]+bestaudio/best[height<=1080]"
720p-f "bestvideo[height<=720]+bestaudio/best[height<=720]"
480p-f "bestvideo[height<=480]+bestaudio/best[height<=480]"
最低-f "worstvideo+worstaudio/worst"

出力テンプレート変数

-o テンプレートで使用できる一般的な変数:

変数説明
%(title)s動画のタイトル
%(ext)sファイル拡張子
%(id)s動画 ID
%(uploader)sチャンネル/アップロード者名
%(upload_date)sアップロード日(YYYYMMDD)
%(duration)s秒単位の再生時間
%(resolution)s動画の解像度

ヒント

  • .webm や .mkv ファイルにならないよう、常に --merge-output-format mp4 を使用してください。
  • メタデータのみを取得する場合は、--dump-json と --no-download を併用してください。ディスクにファイルは書き込まれません。
  • HTTP エラーでダウンロードに失敗した場合は、まず yt-dlp を更新してください(yt-dlp -U)。
  • フル解像度が不要で、帯域幅を節約したい場合は、-f "bestvideo[height<=720]+bestaudio" を使用してください。
  • yt-dlp はレート制限と再試行を自動的に処理します。
  • --dump-json の出力には、title、duration、uploader、view_count、description、formats、subtitles など、多くの情報が含まれます。

トラブルシューティング

  • 「yt-dlp: command not found」:インストールし(pip install yt-dlp)、PATH に pip の bin ディレクトリが含まれていることを確認してください。
  • 「ffmpeg: command not found」:ffmpeg をインストールしてください。動画と音声が別々のストリームになっている場合(YouTube の HD でよくあります)、ffmpeg がないとダウンロードに失敗します。
  • ダウンロードに失敗する、またはエラーが返される:yt-dlp -U を実行して更新してください。サイトは頻繁に変更されるため、yt-dlp は定期的に修正をリリースしています。

コメント