v0.3.19
debpalash/VoiceStudiov0.3.19Jul 12, 2026by github-actions[bot]
Upgrading?
AI Summary
Improves error honesty and user experience with streaming audio playback, a proper uninstaller script, and more transparent crash reporting.
Key Highlights
- Audio now streams and plays on the first chunk instead of waiting for the entire generation.
- New uninstall scripts (`.sh` and `.ps1`) for manual cleanup.
- Dubbing errors now show actual crash details instead of generic guesses.
New Features
- Streaming audio playback for generated speech.
- Uninstall scripts for macOS, Linux, and Windows.
- Crash detail view for dubbing sessions.
Full Release Notes
The honesty release. Every error in here was already *technically* true and practically useless — so this round went after the lies the app tells when something goes wrong. "Can't reach the local OmniVoice backend" no longer fires while the backend is simply still starting; a dead Hugging Face mirror no longer strands the setup wizard with advice it can't follow; and a dub that dies mid-transcription now names the actual cause instead of guessing at it. Alongside that: generated speech starts playing on the *first* chunk instead of the last, and there's finally a real uninstaller. ### Added - **Generated speech starts playing on the first chunk, instead of after the last one.** Long text is synthesized in chunks, but you used to sit through the entire render before hearing anything. The Studio now streams the preview: audio begins the moment the first chunk is ready and the rest arrives as it renders, so a long passage is audible in about the time the first sentence takes. The take saved to your history is **byte-identical** to the non-streaming render — streaming is a delivery channel, not a different synthesis path — and if a stream fails mid-flight the app falls back to the classic whole-file flow with nothing half-written to disk. (#1088) - **A clean uninstaller + a straight answer to "where's my data?"** OmniVoice is fully local, so removing it is just deleting the folders it wrote — but until now users had to guess which ones. New `scripts/uninstall.sh` (macOS/Linux) and `scripts/uninstall.ps1` (Windows) find every OmniVoice folder — app data, the multi-GB managed Python env, config, logs, and (separately, because it's shared) the Hugging Face model cache — print each with its size as a **dry-run first**, and delete only on `--yes`. They honor your custom locations (`OMNIVOICE_DATA_DIR`, `HF_HOME`, portable mode) and never touch the app binary. The complete per-platform path list lives in the new `docs/install/uninstall.md`, linked from the README FAQ, SUPPORT, and troubleshooting. (#1089) ### Fixed - **A dub that dies mid-transcription now says what actually happened instead of guessing.** "Transcribe stream dropped before emitting any segments. Likely ASR backend failed to load" was a *guess* — and usually the wrong one. The backend is contract-bound to emit a terminal event on every stream even when it fails, so a stream that simply goes silent means the backend **process died underneath it** — on smaller GPUs, almost always a native out-of-memory abort while loading the ASR model on top of a still-resident TTS model. The app now consults the desktop shell's crash forensics and tells you that: the exit code, when it happened, a one-click "View crash details" with the captured error output, and the actual next step (free VRAM / pick a smaller ASR model) rather than "check the backend log". With no crash recorded, the original message still stands. (#1062) - **"Can't reach the local OmniVoice backend" stopped crying wolf during startups and restarts.** A real backend start or auto-restart takes 10–20+ seconds (Python spawn plus the PyTorch import), but the app's transport retry only bridged ~3 seconds — every click inside that window dead-ended with the scary toast, over and over, even though the backend healed itself moments later. The app now asks the desktop shell whether a start/restart is actually in progress and simply waits for it (up to the shell's own 2-minute restart budget), and shows a single "backend is restarting — hang tight" banner with a "back — carrying on" confirmation — the reconnecting affordance the supervisor has promised since #567. A truly dead backend (or a non-desktop deployment) still errors promptly, and the crash notice keeps telling the honest story. - **A dead Hugging Face mirror can no longer strand the first-run wizard.** When a model download failed because the *configured* mirror was unreachable, the error pointed at Settings — which first-run users can't open (the wizard gates the studio) — and falsely claimed the mirror setting only applies after a restart (downloads actually pick it up per call, immediately). Now the wizard shows the mirror quick-pick (including "Hugging Face (official)") right next to the failed download and retries it the moment you switch; the corrected hint says retry-first, restart only if it still fails. Two backend holes in the same flow are closed too: switching endpoints clears the "failed recently" retry cooldown (no more 429 on the immediate retry), and clearing to official also removes the legacy `hf_endpoint` pref, which used to silently keep the dead mirror in effect. ### Changed - **The first-run wizard shows the app version in its masthead**, next to the OmniVoice Studio title — so setup-time screenshots and bug reports identify the build at a glance (the install splash already did). - **Repo root decluttered.** Retired the finished planning archives (`.planning/`, `specs/`), the pre-React design mockups (`design/`), the legacy research dir (`research/`), and stale third-party agent rules (`.agents/`) — ~110 files of process noise gone; everything stays in git history, and the four load-bearing engine decision docs moved to `docs/adr/`. Contributor-facing only; the app is unchanged. ### Linux x64 artifacts ``` 4aae088250f48d6da432ea10483875ccf26647b60be67de65cfebf465cc6622b OmniVoice Studio_0.3.19_amd64.AppImage 0fada05ba551b7a2f325fd9ad132f1c48dcf13ee8c6e005120410443a2eb218c OmniVoice Studio_0.3.19_amd64.AppImage.sig ``` ### Windows x64 artifacts ``` 373a7eace6dd9ae279f5ccadfe681dd5beb1b1144981a5ca38cf44e4d1954ef0 *OmniVoice Studio_0.3.19_x64_en-US.msi 3b2083d13093031137e46f46693b5851b01d13cdf9c111d7eecf1aae32ca5c6f *OmniVoice Studio_0.3.19_x64_en-US.msi.sig ``` ### macOS Intel artifacts ``` 70499c162e027395894b8a4f0c959e69a926f1a660036a2c552fe106dd69e789 OmniVoice Studio_0.3.19_x64.dmg 586bdb50baf290476bfdc011d6f1a8f2355d919d8aff8b342027fdebe2ff8d93 OmniVoice Studio.app.tar.gz 570c608c81e67ca975f6a90ec07ad3c2336e1b0daa71e1393149944bff278f92 OmniVoice Studio.app.tar.gz.sig ```
Related Repositories
public-apis/public-apis★ 491,247
A collective list of free APIs
NousResearch/hermes-agent★ 256,118
The agent that grows with you
yt-dlp/yt-dlp★ 200,290
A feature-rich command-line audio/video downloader
microsoft/markitdown★ 191,578
Python tool for converting files and office documents to Markdown.
Significant-Gravitas/AutoGPT★ 187,702
AutoGPT is the vision of accessible AI for everyone, to use and to build on. Our mission is to provide the tools, so that you can focus on what matters.