High-quality voice-to-text with advanced hallucination filtering and intelligent silence detection
A multi-platform voice input solution featuring superior transcription quality through advanced text processing and voice activity detection.
Unlike basic Whisper wrappers, this service includes:
- β¨ Advanced Hallucination Filtering - Removes common Whisper artifacts ("thanks for watching", timestamps, etc.)
- π― Silero VAD Integration - State-of-the-art voice activity detection
- π Smart Text Processing - Intelligent overlap detection and text appending
- π€ Multiple Modes - Continuous (auto-pause) and manual recording modes
- π Multi-language Support - Works with all Whisper-supported languages
Real-time voice-to-text service with system-wide text insertion capabilities.
Status: β Production Ready
System-wide voice keyboard (IME) bringing desktop-quality filtering to mobile.
Status: β IME Complete!
- Professional voice keyboard with dual modes (Tap/Hold)
- Real-time audio visualizer
- Advanced hallucination filtering
- Cosmos-themed modern UI
- See Current Status for details
# Clone repository
git clone https://github.com/yourusername/STT
cd STT/desktop
# Install dependencies
python -m venv .venv
source .venv/bin/activate # or .venv\Scripts\activate on Windows
pip install -e ".[dev]"
# Run
python -m voice_input_serviceKeyboard Shortcuts:
Alt+R- Start/Stop recordingAlt+I- Toggle insertion modeAlt+V- Paste textAlt+S- Save transcriptAlt+C- Clear text
π§ Android version is under active development. See Android Port Plan for progress.
- Desktop User Guide - Installation and usage
- Configuration Guide - Customizing settings
- Troubleshooting - Common issues
- Architecture Overview - System design
- Core Algorithms - Shared logic documentation
- API Documentation - Technical details
- Development Guide - Contributing
- Android Port Plan - Complete execution roadmap
- Quick Start - Jump in fast
- Component Mapping - Python to Kotlin
The heart of our quality is in these platform-agnostic algorithms:
-
Text Processor (docs)
- 40+ hallucination patterns
- Intelligent overlap detection
- Smart text appending with capitalization
-
Voice Activity Detection (docs)
- Silero VAD with configurable threshold
- Frame-based processing (30ms)
- Device optimization (CPU/GPU/NNAPI)
-
Audio Processing Pipeline (docs)
- Buffer management
- Silence-triggered segmentation
- Continuous and manual modes
Desktop (Python)
Microphone β AudioRecorder β TranscriptionWorker (VAD) β
Whisper β TextProcessor β System Text Insertion
Android (Kotlin - In Progress)
AudioRecord β AudioProcessor (VAD) β WhisperEngine β
TextProcessor β IME Text Insertion
- β Removes Whisper hallucinations automatically
- β Filters timestamps and artifacts
- β Intelligent text deduplication
- β Proper capitalization and spacing
- β Configurable minimum word count
- β Silero VAD (neural network-based)
- β Configurable sensitivity (0.0-1.0)
- β Smart silence duration detection
- β Automatic vs manual modes
- β OpenAI Whisper (tiny β large models)
- β whisper.cpp support (faster)
- β Multi-language support
- β GPU acceleration (CUDA/MPS/CPU)
- β System-wide operation
- β Direct text insertion or clipboard
- β Configurable keyboard shortcuts
- β Session saving with timestamps
- β Real-time transcription display
sample_rate: 16000 # Hz
vad_threshold: 0.5 # 0.0-1.0 (higher = less sensitive)
silence_duration_sec: 2.0 # Seconds of silence to trigger processing
max_chunk_duration_sec: 15.0 # Maximum audio chunk sizemodel_name: "base" # tiny, base, small, medium, large
language: "en" # Language code or None for auto-detect
use_cpp: true # Use whisper.cpp (faster)Full configuration guide: Configuration Documentation
| Feature | Basic Whisper | Other Apps | Voice Input Service |
|---|---|---|---|
| Hallucination Filtering | β | Basic | β Advanced (40+ patterns) |
| Overlap Detection | β | β | β Smart deduplication |
| VAD Quality | Basic | Varies | β Silero (SOTA) |
| Text Processing | None | Basic | β Intelligent appending |
| Continuous Mode | β | Limited | β Fully featured |
We welcome contributions! This project is unique in its quality focus.
See Android Port Plan - We're actively porting to Android!
- π’ Easy: Testing on different devices/OS
- π‘ Medium: Additional hallucination patterns
- π΄ Advanced: Android IME development
- Desktop voice input service
- Advanced hallucination filtering
- Silero VAD integration
- whisper.cpp support
- Continuous mode with smart appending
- Comprehensive documentation
- Android Settings & Configuration UI
- Main app polish
- Real-world testing in popular apps
- iOS version
- Web app (browser-based)
- Cloud sync for transcripts
- Custom model fine-tuning
- Multi-speaker diarization
See GitHub Issues for current bugs and feature requests.
Desktop:
- FFmpeg required for Whisper
- Large models slow on CPU
- Windows-only keyboard shortcuts (for now)
Android:
- In development - not yet functional
MIT License - See LICENSE file for details.
- OpenAI Whisper team for the excellent STT model
- ggerganov for whisper.cpp
- Silero team for VAD models
- All contributors and testers
- π Documentation
- π Report Issues
- π‘ Feature Requests
- π§ Email: [email protected]
Built with β€οΈ for high-quality voice input
β Star this repo if you find it useful!
STT/
βββ android/ # Android application (in development)
βββ desktop/ # Desktop application (Python)
βββ docs/ # Documentation
β βββ core/ # Shared algorithm docs
β βββ desktop/ # Desktop-specific docs
β βββ android/ # Android-specific docs
βββ ANDROID_PORT_PLAN.md # Detailed Android porting plan
βββ QUICKSTART.md # Quick start for contributors
βββ README.md # This file
For developers: Start with QUICKSTART.md to understand the project structure and begin contributing.