How jimmykoumako/whisper works
Whisper Studio is a local speech-to-text and AI knowledge platform. Its main workflow accepts uploaded or linked media, transcribes it through a selectable Whisper backend, and keeps transcripts and metadata in a searchable SQLite library. Users can then request Ollama summaries, questions, chapters, reference extraction, or study notes, and export transcripts in several formats. The graph also shows the web/API entry points and desktop control capability. Several modules were not sampled, so their internal call wiring is left out where the excerpts do not establish it.
Main entry points: api_v1.py HTTP API · web.py Web UI · transcription_service.py Media intake · database.py Transcript database
Components 19
User interfaces
- Web UI
web.py - HTTP API
api_v1.py - API key auth
auth.py
Media transcription
- Media intake
transcription_service.py - Transcription jobs
jobs.py - Backend selection
backends/factory.py - Whisper backends
backends
Transcript library
- Transcript database
database.py - Audio files
storage.py - Transcript search
database.py
AI and outputs
- AI analysis
services/ai.py - Ollama client
services/ollama.py - Transcript exports
exports.py
Studio operations
- Studio controls
services/control.py - Public tunnel
ngrok_utils.py
Other components
- Studio user
- API client
- Media source
- Ollama model
Connections 26
- Studio user → Web UI: uses
- API client → HTTP API: calls
- HTTP API → API key auth: checks keys
- HTTP API → Media intake: requests intake
- Web UI → Media intake: submits media
- Media source → Media intake: provides media
- Media intake → Audio files: stores audio
- Media intake → Transcript database: creates records
- Media intake → Transcription jobs: schedules work
- Transcription jobs → Backend selection: selects backend
- Backend selection → Whisper backends: creates backend
- Transcription jobs → Whisper backends: transcribes audio
- Transcription jobs → Transcript database: saves results
- HTTP API → AI analysis: requests analysis
- Web UI → AI analysis: requests analysis
- AI analysis → Ollama client: generates prompts
- Ollama client → Ollama model: sends requests
- HTTP API → Transcript search: searches transcripts
- Web UI → Transcript search: searches transcripts
- Transcript search → Transcript database: reads transcripts
- HTTP API → Transcript exports: requests exports
- Web UI → Transcript exports: requests exports
- HTTP API → Transcript database: reads library
- Web UI → Transcript database: reads library
- Studio user → Studio controls: manages studio
- Studio controls → Public tunnel: controls tunnel