3.5 KiB
3.5 KiB
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
# 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
- Launch the app:
tooling stt statusbar - Look for the 🎙️ icon in your macOS menu bar
- Click the icon to open the menu
- Set your preferences:
- Choose wake word from Settings > Wake Word
- Select model from Settings > Model
- Optionally set output file with "Save to File..."
- Click "Start STT" to begin
- Say your wake word (e.g., "jarvis") to trigger recording
- Speak clearly after the wake word is detected
- Get notifications with your transcribed text
- Use Pause/Resume as needed
- 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