|
video-download Download video and audio from URLs using yt-dlp directly. No wrapper scripts needed. Prerequisites yt-dlp: brew install yt-dlp or pip install yt-dlp ffmpeg: brew install ffmpeg or apt install ffmpeg (required for merging video+audio streams) Update yt-dlp periodically to keep up with site changes: yt-dlp -U or pip install -U yt-dlp. Commands Download best quality yt-dlp "URL" -o "%(title)s.%(ext)s" --merge-output-format mp4 Download specific resolution # 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 Audio only yt-dlp "URL" -x --audio-format mp3 --audio-quality 0 Download subtitles # 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 Get metadata (no download) yt-dlp "URL" --dump-json --no-download List available formats yt-dlp "URL" -F Specify output directory yt-dlp "URL" -o "./downloads/%(title)s.%(ext)s" --merge-output-format mp4 Quality Presets Quality Format flag Best -f "bestvideo+bestaudio/best" (default) 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]" Worst -f "worstvideo+worstaudio/worst" Output Template Variables Common variables for -o templates: Variable Description %(title)s Video title %(ext)s File extension %(id)s Video ID %(uploader)s Channel/uploader name %(upload_date)s Upload date (YYYYMMDD) %(duration)s Duration in seconds %(resolution)s Video resolution Tips Always use --merge-output-format mp4 to avoid ending up with .webm or .mkv files. Use --no-download with --dump-json for metadata-only queries -- no files written to disk. If a download fails with HTTP errors, update yt-dlp first (yt-dlp -U). Use -f "bestvideo[height<=720]+bestaudio" to save bandwidth when full resolution is not needed. yt-dlp automatically handles rate limiting and retries. The --dump-json output includes title, duration, uploader, view_count, description, formats, subtitles, and much more. Troubleshooting "yt-dlp: command not found": Install it (pip install yt-dlp) and ensure your PATH includes pip's bin directory. "ffmpeg: command not found": Install ffmpeg. Without it, downloads fail when video and audio are separate streams (common on YouTube for HD). Downloads fail or return errors: Run yt-dlp -U to update. Sites change frequently and yt-dlp ships fixes regularly.
don't have the plugin yet? install it then click "run inline in claude" again.