Add elapsed recording timer with auto-stop and configurable max duration#40
Add elapsed recording timer with auto-stop and configurable max duration#40xROBERTINOx wants to merge 2 commits intozachlatta:mainfrom
Conversation
|
Can you send a video showing this working? Thank you! Also FYI that it no longer uses uncompressed audio. Audio is now compressed. |
Since this was merged #38, the theoretical time limit for a transcription to fit in groq's 25MB limit is around 12 minutes. I've ran a couple of tests on audio files with that length and it seems the transcription finishes in around 3-4 seconds, so the 20 second timeout should be plenty. I would say this covers most dictation use cases, what would maybe make sense is a countdown timer when getting close to the limit (instead of permanent), but merging #43 complicates things significantly, making it hard to set good defaults based on provider/plan/etc. so it would be up to the user to manually set the time limit. |
Summary
Files Modified
Sources/RecordingOverlay.swift— AddedElapsedTimerView,elapsedSeconds/maxRecordingSecondson overlay state, widened overlay panel to fit timerSources/AppState.swift— AddedmaxRecordingSecondsas a persisted setting, recording timer with auto-stop logicSources/SettingsView.swift— Added "Recording Limit" settings card with default/custom optionsWhy
Groq's Whisper transcription has a 20-second timeout. Uncompressed PCM audio at ~10 MB/min means recordings over ~3 minutes risk timing out. The 2-minute default provides a safe margin while covering typical dictation use cases.