Video Content Watcher
Extract audio → transcribe → analyze → generate structured Markdown report.
Quick Start
cd /home/ykl/.openclaw/workspace-code-dev/video-reader
export MINIMAX_API_KEY="your-key"
export WHISPER_MODE="local" # or "api"
python3 << 'EOF'
import sys; sys.path.insert(0, 'src')
from video_reader_mcp import VideoReaderMCP
mcp = VideoReaderMCP()
result = mcp.process_url('VIDEO_URL')
print(result['report'])
EOF
Or use the CLI script:
python3 /home/ykl/.openclaw/workspace/skills/video-content-watcher/scripts/video_reader.py "VIDEO_URL"
Workflow
- Audio extraction: Uses
yt-dlpfor online videos /ffmpegfor local files - Transcription: Whisper (local
openai-whisperor API mode) - Analysis: MiniMax LLM analyzes transcript → structured report
Configuration (env vars)
| Variable | Required | Default | Description |
|---|---|---|---|
MINIMAX_API_KEY |
Yes | — | MiniMax API key |
WHISPER_MODE |
No | api |
api or local |
WHISPER_API_KEY |
If mode=api | — | OpenAI API key for Whisper |
LLM_BASE_URL |
No | https://api.minimaxi.com/v1 |
MiniMax endpoint |
LLM_MODEL |
No | MiniMax-M2.7 |
Model name |
Supported Sources
- YouTube:
https://www.youtube.com/watch?v=xxx - Bilibili:
https://www.bilibili.com/video/BVxxx - Local files:
/path/to/video.mp4
Output
Returns a Markdown report with:
- Basic info (source, transcript length)
- Core content summary
- Key takeaways
- Main viewpoints
- Pros / cons
- Target audience
Scripts
scripts/video_reader.py— CLI entry pointscripts/analyze_text.py— Analyze raw text directly (skip video processing)
