Skip to content

v0.1.20

Choose a tag to compare

@github-actions github-actions released this 23 Jul 20:42

Highlights

  • Local Whisper: no more repeated or invented text (#55, #57) — the local whisper.cpp backend now uses silence-delimited phrase segmentation by default: it splits audio after a configurable stretch of silence (phrase_silence_ms, default 400ms) and decodes each phrase exactly once, so the repetition and hallucinated text from overlapping sliding windows is gone — and short phrases come out faster. The decoder is also hardened in both modes (no_context, entropy threshold, non-speech-token suppression, and prior output is never fed back as prompt). The old behavior remains available with [local-whisper] segmentation = "window". Thanks @velnari-malakh for the detailed report and repro.
  • Per-session language override: whisrs toggle -l <code> (#54) — override general.language for a single dictation session without touching config or restarting the daemon. The motivating use case is one hotkey per language, e.g. F1 -> whisrs toggle -l en, F2 -> whisrs toggle -l pl. Works on both streaming and batch backends, never leaks into the next session, and invalid codes fail fast at start instead of after you've recorded a whole session. Thanks @lukaszlew for the PR.
  • whisrs cancel now truly discards streamed text — previously the streaming backend's end-of-stream flush could still be decoded and typed after a cancel. The typing pipeline now checks a per-recording cancel flag at a single choke point, so cancelled audio never reaches your keyboard.
  • Minimal build regains tray icon + overlay (#51, #52) — the "minimal" release variant was accidentally built without the tray and overlay features, not just without offline whisper.cpp. "Minimal" is now defined as the full build minus local Whisper. Thanks @pettijohn for the report.

Install / Upgrade

curl -sSL https://y0sif.github.io/whisrs/install.sh | bash

# Or:
cargo install whisrs --locked
yay -S whisrs-git

Full Changelog: v0.1.19...v0.1.20