Youtube Transcription Generator
by @mehediahamed
Use VLM Run (vlmrun) to generate transcriptions from YouTube videos. Download a video with yt-dlp, then run vlmrun to transcribe with optional timestamps. VLMRUN_API_KEY must be in .env; follow vlmrun-cli-skill for CLI setup and options.
clawhub install youtube-transcription-generatorπ About This Skill
name: youtube-transcription-generator description: "Use VLM Run (vlmrun) to generate transcriptions from YouTube videos. Download a video with yt-dlp, then run vlmrun to transcribe with optional timestamps. VLMRUN_API_KEY must be in .env; follow vlmrun-cli-skill for CLI setup and options."
YouTube Transcription Generator (VLM Run)
Generate transcriptions from YouTube videos using vlmrun for speech-to-text and optional timestamps. This skill:
1. Downloads the YouTube video (or audio) with yt-dlp. 2. Transcribes the video with vlmrun (Orion visual AI). 3. Saves the transcript to a file (plain text or with timestamps).
Refer to vlmrun-cli-skill for vlmrun CLI setup, environment variables, and all vlmrun chat options.
How the assistant should use this skill
.env for API key.env (or .env.local) contains VLMRUN_API_KEY.
- If missing, instruct the user to set it before running any vlmrun commands.-i ).
- vlmrun accepts video files (e.g. .mp4). For YouTube, the skill first downloads the video with yt-dlp, then passes the file to vlmrun.vlmrun chat "Transcribe this video with timestamps for each section. Output the full transcript in a clear, readable format." -i -o .
- Capture vlmrunβs response and save it as the transcript file (e.g. transcript.txt).Prerequisites
vlmrun[cli])> See vlmrun-cli-skill for detailed vlmrun usage and examples (including video transcription).
Installation & Setup
From the youtube-transcription-generator directory:
Windows (PowerShell):
cd path\to\youtube-transcription-generator
uv venv
.venv\Scripts\Activate.ps1
uv pip install -r requirements.txt
macOS/Linux:
cd path/to/youtube-transcription-generator
uv venv
source .venv/bin/activate
uv pip install -r requirements.txt
Copy .env_template to .env and set VLMRUN_API_KEY.
Quick Start: Transcribe a YouTube Video
Option A: Run the script (recommended)
# From youtube-transcription-generator directory, with venv activated
python scripts/run_transcription.py "https://www.youtube.com/watch?v=VIDEO_ID" -o ./output
This will:
1. Download the video with yt-dlp into the output directory.
2. Run vlmrun to transcribe the video.
3. Save the transcript as output/transcript.txt (and keep artifacts in output/).
Option B: Manual vlmrun (after downloading the video yourself)
# 1) Download with yt-dlp
yt-dlp -f "bv*[ext=mp4]+ba/best[ext=mp4]/best" -o video.mp4 "https://www.youtube.com/watch?v=VIDEO_ID"2) Transcribe with vlmrun (see vlmrun-cli-skill for options)
vlmrun chat "Transcribe this video with timestamps for each section. Output the full transcript in a clear, readable format." -i video.mp4 -o ./output
Capture the vlmrun stdout and save it as your transcript, or use --json if you need structured output.
Prompt variants for vlmrun
"Transcribe this video with timestamps for each section. Output the full transcript in a clear, readable format.""Transcribe everything said in this video. Output only the spoken text, no timestamps."--json and ask for a structured format in the prompt (e.g. list of { "time": "...", "text": "..." }).Workflow checklist
vlmrun is installed and VLMRUN_API_KEY is set (see vlmrun-cli-skill).uv pip install -r requirements.txt (includes vlmrun[cli] and yt-dlp).python scripts/run_transcription.py -o ./output or download + vlmrun manually.output/transcript.txt).Troubleshooting
uv pip install "vlmrun[cli]". See vlmrun-cli-skill.VLMRUN_API_KEY in .env or the current shell.uv pip install -U yt-dlp. Check the URL is a valid public YouTube video.-f bestaudio) to reduce size and speed up transcription.
βοΈ Configuration
vlmrun[cli])> See vlmrun-cli-skill for detailed vlmrun usage and examples (including video transcription).
π Tips & Best Practices
uv pip install "vlmrun[cli]". See vlmrun-cli-skill.VLMRUN_API_KEY in .env or the current shell.uv pip install -U yt-dlp. Check the URL is a valid public YouTube video.-f bestaudio) to reduce size and speed up transcription.