Transcribe and Analyze
Local transcription of audio/video content using WhisperKit. Analysis is available on request using OpenAI or local Ollama.
Capabilities
-
Transcription - Convert audio/video URLs to text using WhisperKit (runs locally, always available)
-
Analysis - Extract insights from transcripts (only when user asks for it, supports OpenAI or Ollama)
Quick Start
Transcribe Only
python3 scripts/transcribe.py "https://youtube.com/watch?v=..."
Transcribe + Analyze (OpenAI)
python3 scripts/transcribe.py "https://youtube.com/watch?v=..." python3 scripts/analyze_transcript.py whisper-transcriptions/video.md
Transcribe + Analyze (Local)
python3 scripts/transcribe.py "https://youtube.com/watch?v=..." python3 scripts/analyze_transcript.py whisper-transcriptions/video.md --local
Transcription
Script Options
Basic
python3 scripts/transcribe.py "URL"
Custom output directory
python3 scripts/transcribe.py "URL" --output-dir "/path/to/save"
Higher accuracy (slower)
python3 scripts/transcribe.py "URL" --model medium
Without timestamps
python3 scripts/transcribe.py "URL" --no-timestamps
Custom filename
python3 scripts/transcribe.py "URL" --filename "my-transcription.md"
Whisper Models
Model Speed Accuracy Use Case
tiny
Fastest Lowest Quick drafts, testing
base
Fast Reasonable Simple content
small
Balanced Good Default - most use cases
medium
Slower High Lectures, important content
large
Slowest Highest Critical accuracy needed
Dependencies
-
yt-dlp - pip install yt-dlp or brew install yt-dlp
-
whisperkit-cli - https://github.com/argmaxinc/WhisperKit
Script checks for these and provides install instructions if missing.
Output
Transcriptions save to ./whisper-transcriptions/ as markdown:
Transcription
Source: https://youtube.com/watch?v=example Transcribed: 2025-01-15 14:30:00 Tool: WhisperKit
[00:00:00.000 --> 00:00:05.000] Welcome to this video...
Analysis
Provider Options
OpenAI API (default):
python3 scripts/analyze_transcript.py transcript.md python3 scripts/analyze_transcript.py transcript.md --model gpt-4o
Requires OPENAI_API_KEY environment variable.
Local Ollama:
python3 scripts/analyze_transcript.py transcript.md --local python3 scripts/analyze_transcript.py transcript.md --local --model mistral
Requires Ollama running (ollama serve ).
Script Options
Default comprehensive analysis (OpenAI)
python3 scripts/analyze_transcript.py transcript.md
Use local Ollama
python3 scripts/analyze_transcript.py transcript.md --local
Specify model
python3 scripts/analyze_transcript.py transcript.md --model gpt-4o python3 scripts/analyze_transcript.py transcript.md --local --model llama3.2
Custom analysis prompt
python3 scripts/analyze_transcript.py transcript.md --prompt "List all tools mentioned"
Custom output location
python3 scripts/analyze_transcript.py transcript.md --output ~/Documents/analysis.md
Print to stdout instead of saving
python3 scripts/analyze_transcript.py transcript.md --print
Default Analysis Includes
-
Executive summary (2-3 paragraphs)
-
Key insights (5-7 bullet points)
-
Topics discussed with summaries
-
Notable quotes (3-5 memorable quotes)
-
Action items and recommendations
-
Additional observations
Custom Prompt Examples
--prompt "List all technologies and tools mentioned" --prompt "What are the main arguments presented?" --prompt "Extract all statistics and data points" --prompt "Summarize in 5 bullet points" --prompt "What questions were asked and how were they answered?"
Dependencies
-
openai - pip install openai (used for both OpenAI and Ollama)
-
OPENAI_API_KEY environment variable (for OpenAI only)
-
Ollama running locally (for --local mode)
Output
Analysis saves alongside transcript as transcript_name_analysis.md :
Transcript Analysis
Source Transcript: path/to/transcript.md Analysis Model: gpt-4o-mini (OpenAI) Tokens Used: 33,763
[Analysis content]
Common Workflows
Full Pipeline: URL to Insights (Cloud)
python3 scripts/transcribe.py "https://youtube.com/watch?v=abc123" python3 scripts/analyze_transcript.py whisper-transcriptions/watch.md
Full Pipeline: URL to Insights (Local)
python3 scripts/transcribe.py "https://youtube.com/watch?v=abc123" python3 scripts/analyze_transcript.py whisper-transcriptions/watch.md --local
Multiple Analyses on Same Transcript
python3 scripts/analyze_transcript.py transcript.md --output summary.md python3 scripts/analyze_transcript.py transcript.md --prompt "List action items" --output actions.md python3 scripts/analyze_transcript.py transcript.md --prompt "Extract quotes" --output quotes.md
Batch Transcription
python3 scripts/transcribe.py "URL1" python3 scripts/transcribe.py "URL2" python3 scripts/transcribe.py "URL3"
Reference Files
Troubleshooting (references/troubleshooting.md )
-
Download failures
-
Transcription errors
-
Dependency issues
-
API errors
Configuration (references/configuration.md )
-
Output format details
-
File naming behavior
-
Model selection guidance
Usage Patterns (references/usage-patterns.md )
-
Common transcription scenarios
-
Analysis patterns
-
Batch processing tips
Scripts
Script Purpose
scripts/transcribe.py
Download and transcribe audio/video from URLs (WhisperKit)
scripts/analyze_transcript.py
AI analysis of transcript files (OpenAI or Ollama)