transcribe_podcast
Transcribes podcast audio/video files into searchable metadata, supporting multi-speaker diarization and Whisper model selection. Caches results by file hash.
Instructions
STEP 1 — Transcribe a podcast video/audio file. This is typically the first tool you call.
What it does: Uses Whisper AI for word-level timestamps. Speaker detection (who said what) is off by default; pass enable_diarization=true to add speaker labels where torch/pyannote is available (whisper-py engine). Returns: Lightweight metadata only — duration, language, word/segment counts, speaker summary, and packed_ready flag. The actual transcript body is NOT returned here (it would be 500KB+ for a typical episode). Read the content via get_ui_state(include_transcript: true) which returns a compact phrase-grouped markdown view (~10x smaller than raw segments). Caching: Results are cached by file hash — same file won't be re-transcribed. Supported formats: MP4, MOV, WebM, MKV, MP3, WAV.
After transcription: call get_ui_state(include_transcript: true) to read the transcript, then analyze it for viral moments and call suggest_clips.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| engine | No | Transcription engine | |
| language | No | ISO language code | |
| file_path | Yes | Absolute path to the podcast file | |
| model_size | No | Whisper model size | base |
| num_speakers | No | Exact number of speakers if known (e.g. 2). Auto-detects if omitted. | |
| enable_diarization | No | Set true for speaker labels (who is speaking). Works where torch is available (whisper-py engine); slower. Default: false |