Dual-engine complete: the whisper.cpp/Vulkan backend (cross-vendor GPU — AMD, Intel, and NVIDIA) is hardware-verified alongside faster-whisper, with a UI Inference Engine picker and seamless runtime switching. The Windows build now bundles whisper.cpp, and dropdown popups size correctly at UI zoom. First public release since 0.6.9, so it also carries the whole 0.7.x–0.8.x engine arc.
Changelog
Every Eqho release, what changed, and when. Newest first. Full details live in CHANGELOG.md.
whisper.cpp backend wired as a real second engine (via pywhispercpp). engine_backend is now "auto": faster-whisper on NVIDIA+CUDA, whisper.cpp (AMD/Intel/CPU) otherwise.
Seamless model switching — the Whisper model runs in a subprocess model host, so switching swaps in the background with no app restart and a native inference crash never takes down the app. Introduces a pluggable inference backend.
Mic Sensitivity slider (tune the speech gate for noisy rooms or soft mics) and per-app paste rules (force typing or clipboard per application).
The dashboard reopens to the tab you were on after a model-change restart.
Crash-proof model switching (restart-on-switch) with a one-time explainer dialog. Language changes are now instant (no model reload).
Fixed lost transcription when a model reload nulled the model mid-transcribe.
Auto-format (Tier-1 text cleanup) — safe, deterministic capitalization and spacing that never rephrases your words. Optional filler-word removal.
GitHub rename (danielmevit/eqho) adopted everywhere; tray logo assets renamed to their true size.
Adaptive VAD — fixes "mic shows signal but nothing transcribes" on quiet mics by tracking the ambient noise floor instead of a fixed threshold. Audio-level bar recalibrated so normal speech sits mid-overlay.
Eliminated the model-switch freeze (a tkinter cross-interpreter deadlock). Reliable start chime, exact overlay positioning, and left-aligned multi-line overlay text.
Branding to damt.xyz. Single-instance lock stops a second copy from fighting over the hotkey and VRAM. Hotkey registration hardened.
Freeze watchdog dumps thread stacks on a >5 s stall; new --diagnose model-switch tool; stale active-model display fixed.
Fixed distil models showing "Not downloaded". Rotating file log plus crash hooks so the windowed exe leaves evidence.
First public GitHub Release. Fixed italic headings, Models-tab flashing, and silent download failures. New overlay audio-level indicator.
Stacked setting rows for narrow windows; 150% default zoom with a live UI Zoom setting; model downloads directly in the Models tab.
Polish pass: softer chime, fast theme switching, segmented-control and toggle restyle, README rewrite for launch.
Cross-platform — Linux (.tar.gz/AppImage) and macOS (.app/.dmg) packages. New oskit platform layer, pynput hotkeys, and a Windows/Linux/macOS CI build matrix.
Local features — transcript history, custom vocabulary, text replacements, opt-in voice commands ("new line", "delete that"), and synthesized sound feedback.
Windows packaging pipeline: PyInstaller onedir spec, per-user Inno Setup installer, portable zip, and a tag-triggered GitHub Actions release workflow.
UI overhaul (Toolcraft-inspired, near-black theme, hairline borders). dashboard.py split into an src/ui/ package. Dark title bar and overlay animations.
Headless --smoke self-check, hallucination gating, CPU warm-up, a configurable model cache directory, and platformdirs config paths.
CodeGraph index for structural navigation; src/version.py as the single source of truth; docs restructured.
Custom ThemedDropdown widget, tray-icon theme detection, and a window title-bar icon.
The Dashboard — a full settings window with sidebar navigation, model cards, a dark/light/system theme system, and rounded overlay corners.
Hotkey customization UI, "Start with Windows" toggle, overlay position preference, and the bundled Inter font.
Renamed Ekho → Eqho. Default hotkey is now Alt+Q. Microphone selector and volume ducking while speaking (pycaw).
Text injection now targets the correct window; modifier keys are released before paste.
Default model switched to distil-large-v3 (~6× faster than large-v3). Distil and Turbo models added.
Graceful CUDA → CPU fallback; Eqho's own energy-based VAD replaces Whisper's over-aggressive filter.
Renamed Echo → Eqho; standardized on the faster-whisper transcription engine.
Initial release — the full dictation pipeline: system tray, global hotkey, live overlay, text injection, faster-whisper on-device transcription, and 13 languages.