# Media Downloader

Download videos and audio from 1500+ websites including YouTube, Bilibili, TikTok...

- Repository: https://github.com/dp-archive/archive (1107 stars)
- Category: Media
- License: Apache-2.0
- Last updated: 2026-03-04
- Runs scripts: yes, review before use

## Install

Claude Code: `npx skills add dp-archive/archive --skill media-downloader -g -a claude-code -y`
Codex: `npx skills add dp-archive/archive --skill media-downloader -g -a codex -y`
Cursor: `npx skills add dp-archive/archive --skill media-downloader -g -a cursor -y`
Gemini CLI: `npx skills add dp-archive/archive --skill media-downloader -g -a gemini-cli -y`

## Description

Download videos and audio from 1500+ websites including YouTube, Bilibili, TikTok, Twitter/X, Instagram, Vimeo, and more using yt-dlp. Use when the user wants to download videos, save media from social platforms, download with specific resolution (720p/1080p/4K), get subtitles, or download entire playlists. Triggers on requests like 'download this video', 'save this YouTube video', 'download in 1080p', 'download with subtitles', 'download this playlist'.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Media Downloader

Download video/audio from 1500+ websites using yt-dlp. Supports format selection, subtitles, playlists, and custom output naming.

## Quick Start

```bash
# 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"
```

## Format Selection

### Resolution Presets

| Request | Command |
|---------|---------|
| Best quality | `-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"` |

### List Available Formats

```bash
yt-dlp -F "URL"  # Show all formats with codes
```

### Advanced Format Selection

```bash
# 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"
```

## Subtitles

### Download Subtitles

```bash
# 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"
```

### List Available Subtitles

```bash
yt-dlp --list-subs "URL"
```

### Subtitle Format

```bash
# Convert to SRT
yt-dlp --write-subs --sub-format srt "URL"

# Available: srt, ass, vtt, lrc
```

## Output Naming

### Template Variables

The rest: https://github.com/dp-archive/archive/blob/HEAD/seed_skills/media-downloader/SKILL.md
