{"text":"Welcome everyone to today's session.","words":[{"text":"Welcome","start":0.0,"end":0.52,"confidence":0.99},{"text":"everyone","start":0.58,"end":1.10,"confidence":0.99}],"language":"en","duration":1823.4}
flowchart LR
A[audio/video] --> B[Extract MP3]
B --> C{File > 10 min?}
C -->|Yes| D[Split into\n10-min chunks]
C -->|No| E[Single API call]
D --> F[Whisper API\nΓ N chunks]
E --> F
F --> G[Merge + offset\ntimestamps]
G --> H[SRT / TXT / JSON]
Transcript cache
After transcribing, the result is cached at ~/.praisonai/editor/{file}/transcript.json.
Running edit on the same file loads from cache β no repeat API calls.
Python API
frompraisonai_editor.transcribeimporttranscribe_audioresult=transcribe_audio("podcast.mp3",language="en")print(result.text)# full textprint(result.to_srt())# SRT subtitlesforwinresult.words:print(w.start,w.text)