mcpField
V
video-transcript-downloader

video-transcript-downloader

github.com/steipeteCreative & media7.4k1.0k installsUpdated 1w ago
Repository

About video-transcript-downloader

A command-line skill for retrieving video transcripts and downloading video, audio, or subtitles. It supports transcript cleanup, timestamp and language options, and format selection through yt-dlp.

Key features

  1. 01Clean transcript paragraphs
  2. 02Optional timestamps and bracket cues
  3. 03Video, audio, and subtitle downloads
  4. 04List and select formats
  5. 05Pass additional yt-dlp arguments

Use cases

  1. 01Turn a video transcript into readable text
  2. 02Save video or audio files locally
  3. 03Download subtitles in a chosen language

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/steipete/agent-scripts --skill video-transcript-downloader

After installing, type/video-transcript-downloaderin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

.gitignore
package-lock.json
package.json
scripts/
html-entities.js
vtd.js
vtd.test.mjs

Details

From the project README

Video Transcript Downloader

./scripts/vtd.js can:

  • Print a transcript as a clean paragraph (timestamps optional).
  • Download video/audio/subtitles.

Transcript behavior:

  • YouTube: fetch via youtube-transcript-plus when possible.
  • Otherwise: pull subtitles via yt-dlp, then clean into a paragraph.

Setup

cd ~/Projects/agent-scripts/skills/video-transcript-downloader && npm ci

CLI syntax:

./scripts/vtd.js --help
./scripts/vtd.js transcript --help

Subcommands support focused help without requiring --url.

Transcript (default: clean paragraph)

./scripts/vtd.js transcript --url 'https://…'
./scripts/vtd.js transcript --url 'https://…' --lang en
./scripts/vtd.js transcript --url 'https://…' --timestamps
./scripts/vtd.js transcript --url 'https://…' --keep-brackets

Download video / audio / subtitles

./scripts/vtd.js download --url 'https://…' --output-dir ~/Downloads
./scripts/vtd.js audio --url 'https://…' --output-dir ~/Downloads
./scripts/vtd.js subs --url 'https://…' --output-dir ~/Downloads --lang en

Formats (list + choose)

List available formats (format ids, resolution, container, audio-only, etc):

./scripts/vtd.js formats --url 'https://…'

Download a specific format id (example):

./scripts/vtd.js download --url 'https://…' --output-dir ~/Downloads -- --format 137+140

Prefer MP4 container without re-encoding (remux when possible):

./scripts/vtd.js download --url 'https://…' --output-dir ~/Downloads -- --remux-video mp4

Notes

  • Default transcript output is a single paragraph. Use --timestamps only when asked.
  • Bracketed cues like [Music] are stripped by default; keep them via --keep-brackets.
  • Pass extra yt-dlp args after -- for transcript fallback, download, audio, subs, formats.
./scripts/vtd.js formats --url 'https://…' -- -v

Troubleshooting (only when needed)

  • Missing yt-dlp / ffmpeg:
brew install yt-dlp ffmpeg
  • Verify:
yt-dlp --version
ffmpeg -version | head -n 1

Comments

Markdown supported