# STT Status Bar App Usage ## Overview The STT (Speech-to-Text) status bar app provides a convenient macOS menu bar interface for controlling speech-to-text functionality using wake word activation. ## Features - **Start/Stop/Pause/Resume**: Full control over STT recording - **Status Indicators**: Visual status in menu bar (πŸŽ™οΈπŸ”΄ recording, πŸŽ™οΈβΈοΈ paused, πŸŽ™οΈβš« stopped) - **Configurable Settings**: Change wake words and models on the fly - **File Output**: Save transcriptions to a file - **Notifications**: Real-time notifications for transcriptions and status changes ## Usage ### Starting the Status Bar App ```bash # Launch the status bar app tooling stt statusbar # Or using the full CLI path python -m tooling.cli stt statusbar ``` ### Menu Options #### Main Controls - **Start STT**: Begin speech-to-text with current settings - **Stop STT**: Stop speech-to-text completely - **Pause**: Temporarily pause recognition (keeps recorder alive) - **Resume**: Resume recognition from pause #### Settings - **Wake Word**: Choose from predefined options: - jarvis (default) - alexa - hey google - hey siri - computer - **Model**: Select Whisper model: - tiny (fastest, least accurate) - base (default, good balance) - small (more accurate) - medium (most accurate, slower) #### File Management - **Show Recent Transcriptions**: Display last 10 transcription entries - **Save to File...**: Set output file for saving transcriptions ### Status Indicators | Icon | Status | Description | |------|--------|-------------| | πŸŽ™οΈβš« | Stopped | STT is not running | | πŸŽ™οΈπŸ”΄ | Recording | STT is active and listening | | πŸŽ™οΈβΈοΈ | Paused | STT is paused but can be resumed | ### Workflow Example 1. **Launch the app**: `tooling stt statusbar` 2. **Look for the πŸŽ™οΈ icon** in your macOS menu bar 3. **Click the icon** to open the menu 4. **Set your preferences**: - Choose wake word from Settings > Wake Word - Select model from Settings > Model - Optionally set output file with "Save to File..." 5. **Click "Start STT"** to begin 6. **Say your wake word** (e.g., "jarvis") to trigger recording 7. **Speak clearly** after the wake word is detected 8. **Get notifications** with your transcribed text 9. **Use Pause/Resume** as needed 10. **Click "Stop STT"** when done ### Notifications The app provides notifications for: - STT started/stopped/paused/resumed - Transcribed speech (shows first 100 characters) - Settings changes (when STT is running) - File operations ### File Output When you set an output file: - Transcriptions are saved with timestamps - Sessions are marked with start/end timestamps - File is automatically created in ~/Documents/ by default - Each transcription includes: `[HH:MM:SS] transcribed text` ### Requirements - macOS (rumps requires macOS and PyObjC) - RealtimeSTT library - Working microphone - Python 3.11+ ### Troubleshooting - **No menu bar icon**: Make sure you're running on macOS and rumps is installed - **No transcriptions**: Check microphone permissions and try speaking louder - **Wake word not detected**: Try adjusting sensitivity or use a different wake word - **High CPU usage**: Consider using the "tiny" model for better performance ### Advanced Configuration The status bar app uses sensible defaults, but you can modify the underlying configuration by editing the STTStatusBarApp class in `src/tooling/stt_cli.py`. Default settings: - Wake word: "jarvis" - Model: "base" - Sensitivity: 0.6 - Device: auto-detect (CUDA if available, otherwise CPU) - Realtime display: enabled