- Replace Qwen-specific copy with multi-engine messaging across hero, meta, and features - Add GitHub star count fetched server-side via /api/stars with Spacedrive-style navbar badge - Replace 'Why Voicebox exists' section with model cards for all 4 TTS engines - Enable Linux download card (was 'Coming soon') - Update GPU support copy to include ROCm, Intel Arc, DirectML - Add Voice Creator section with animated 3-tab UI (upload, mic, system audio) and waveform background - Make ControlUI responsive: horizontal scroll cards on mobile, stacked layout, scroll-to-active profile - Fix iOS Safari audio autoplay (unlock AudioContext on user gesture) - Fix hero logo square background with mix-blend-lighten - Remove generation length green coloring, use gray with accent highlights - Comment out grain overlay (visible tile seams) - Remove player close button, stack waveform above controls on mobile - Fixed-height profile cards (143px) with space between badges and buttons
9.3 KiB
Voicebox v0.2.0 -- Release Notes
The story
Voicebox v0.1.x shipped as a single-engine voice cloning app built around Qwen3-TTS. It worked, but it was limited: one model family, 10 languages, English-centric emotion, a synchronous generation pipeline that locked the UI, and a hard ceiling on how much text you could generate at once.
v0.2.0 is a ground-up rethink. Voicebox is now a multi-engine voice cloning platform. Four TTS engines. 23 languages. Expressive paralinguistic controls. A full post-processing effects pipeline. Unlimited generation length. Asynchronous everything. And it runs on every major GPU vendor -- NVIDIA, AMD, Intel Arc, Apple Silicon -- plus Docker for headless deployment.
This is the release where Voicebox stops being a proof of concept and starts being a real tool.
Major New Features
Multi-Engine Architecture
Voicebox now supports four TTS engines, each with different strengths. Switch between them per-generation from a single unified interface:
| Engine | Languages | Strengths |
|---|---|---|
| Qwen3-TTS (0.6B / 1.7B) | 10 | High-quality multilingual cloning, delivery instructions ("speak slowly", "whisper") |
| LuxTTS | English | Lightweight (~1GB VRAM), 48kHz output, 150x realtime on CPU |
| Chatterbox Multilingual | 23 | Broadest language coverage -- Arabic, Danish, Finnish, Greek, Hebrew, Hindi, Malay, Norwegian, Polish, Swahili, Swedish, Turkish and more |
| Chatterbox Turbo | English | Fast 350M model with paralinguistic emotion/sound tags |
Emotions and Paralinguistic Tags (Chatterbox Turbo)
Type / in the text input to open an autocomplete for 9 expressive tags that the model synthesizes inline with speech:
[laugh] [chuckle] [gasp] [cough] [sigh] [groan] [sniff] [shush] [clear throat]
Tags render as inline badges in a rich text editor and serialize cleanly to the API. This makes generated speech sound natural and expressive in a way that plain TTS can't.
23 Languages via Chatterbox Multilingual
The Chatterbox Multilingual engine brings zero-shot voice cloning to 23 languages: Arabic, Chinese, Danish, Dutch, English, Finnish, French, German, Greek, Hebrew, Hindi, Italian, Japanese, Korean, Malay, Norwegian, Polish, Portuguese, Russian, Spanish, Swahili, Swedish, and Turkish. The language dropdown dynamically filters to show only languages supported by the selected engine.
Unlimited Generation Length (Auto-Chunking)
Previously, long text would hit model context limits and degrade. Now, text is automatically split at sentence boundaries and each chunk is generated independently, then crossfaded back together. This is fully engine-agnostic and works with all four engines.
- Auto-chunking limit slider (100-5,000 chars, default 800) -- controls when text gets split
- Crossfade slider (0-200ms, default 50ms) -- blends chunk boundaries smoothly, or set to 0 for a hard cut
- Max text length raised to 50,000 characters -- generate entire scripts, chapters, or articles in one go
- Smart splitting respects abbreviations (Dr., e.g., a.m.), CJK punctuation, and never breaks inside paralinguistic
[tags]
Asynchronous Generation Queue
Generation is now fully non-blocking. Submit a generation and immediately start typing the next one -- no more frozen UI waiting for inference to complete.
- Serial execution queue prevents GPU contention across all backends
- Real-time SSE status streaming (
generating->completed/failed) - Failed generations can be retried without re-entering text
- Stale generations from crashes are auto-recovered on startup
- Generating status pill shown inline in the story editor
Post-Processing Effects Pipeline
A full audio effects system powered by Spotify's pedalboard library. Apply effects after generation, preview them in real time, and build reusable presets -- all without leaving the app.
8 effects available:
| Effect | What it does |
|---|---|
| Pitch Shift | Shift pitch up or down by up to 12 semitones |
| Reverb | Room reverb with configurable size, damping, and wet/dry mix |
| Delay | Echo with adjustable delay time, feedback, and mix |
| Chorus / Flanger | Modulated delay -- short for metallic flanger, longer for lush chorus |
| Compressor | Dynamic range compression with threshold, ratio, attack, and release |
| Gain | Volume adjustment from -40 to +40 dB |
| High-Pass Filter | Remove low frequencies below a configurable cutoff |
| Low-Pass Filter | Remove high frequencies above a configurable cutoff |
Effects presets -- Four built-in presets ship out of the box (Robotic, Radio, Echo Chamber, Deep Voice), and you can create unlimited custom presets. Presets are drag-and-drop chains of effects with per-parameter sliders.
Per-profile default effects -- Assign an effects chain to a voice profile and it applies automatically to every generation with that voice. Override per-generation from the generate box.
Live preview -- Audition any effects chain against an existing generation before committing. The preview streams processed audio without saving anything.
Generation Versions
Every generation now supports multiple versions with full provenance tracking:
- Original -- the clean, unprocessed TTS output (always preserved)
- Effects versions -- apply different effects chains to create new versions from any source version
- Takes -- regenerate with the same text and voice but a new seed for variation
- Source tracking -- each version records which version it was derived from
- Version pinning in stories -- pin a specific version to a track clip in the story editor, independent of the generation's default
- Favorites -- star generations to mark them for quick access
New Platform Support
Linux (Native)
Full Linux support with .deb and .rpm packages. Includes PulseAudio/PipeWire audio capture for voice sample recording.
AMD ROCm GPU Acceleration
AMD GPU users now get hardware-accelerated inference via ROCm, with automatic HSA_OVERRIDE_GFX_VERSION configuration for GPUs not officially in the ROCm compatibility list (e.g., RX 6600).
NVIDIA CUDA Backend Swap
The CPU-only release can download and swap in a CUDA-accelerated backend binary from within the app -- no reinstall required. Handles GitHub's 2GB asset limit by downloading split parts and verifying SHA-256 checksums.
Intel Arc (XPU) and DirectML
PyTorch backend also supports Intel Arc GPUs via IPEX/XPU and Windows any-GPU via DirectML.
Docker + Web Deployment
Run Voicebox headless as a Docker container with the full web UI:
docker compose up
3-stage build, non-root runtime, health checks, persistent model cache across rebuilds. Binds to localhost only by default.
Model Management
- Per-model unload -- free GPU memory without deleting downloaded models
- Custom models directory -- set
VOICEBOX_MODELS_DIRto store models anywhere - Model folder migration -- move all models to a new location with progress tracking
- Whisper Turbo -- added
openai/whisper-large-v3-turboas a transcription model option - Download cancel/clear UI -- cancel in-progress downloads, VS Code-style problems panel for errors
Security
- CORS hardening -- replaced wildcard
*with an explicit allowlist of local origins; extensible viaVOICEBOX_CORS_ORIGINSenv var - Network access toggle -- fully disable outbound network requests for air-gapped deployments
Accessibility
- Comprehensive screen reader support (tested with NVDA/Narrator) across all major UI surfaces
- Keyboard navigation for voice cards, history rows, model management, and story editor
- State-aware
aria-labelattributes on all interactive controls
Reliability
- Atomic audio saves -- two-phase write prevents corrupted files on crash/interrupt
- Filesystem health endpoint -- proactive disk space and directory writability checks
- Errno-specific error messages -- clear feedback for permission denied, disk full, missing directory
UX Polish
- Responsive layout with horizontal-scroll voice cards on mobile
- App version shown in sidebar
- Voice card heights normalized
- Audio player title hidden at narrow widths to prevent overflow
Installation
| Platform | Download |
|---|---|
| macOS (Apple Silicon) | Voicebox_0.2.0_aarch64.dmg |
| macOS (Intel) | Voicebox_0.2.0_x64.dmg |
| Windows | Voicebox_0.2.0_x64_en-US.msi or x64-setup.exe |
| Linux | .deb / .rpm packages |
| Docker | docker compose up |
The app includes automatic updates -- future patches will be installed automatically.
Video Script Beats
For the marketing video, focus on these six beats:
- "Four engines, one app" -- show the engine dropdown switching between Qwen, LuxTTS, Chatterbox, and Turbo
- "23 languages" -- generate the same voice clone in Arabic, Japanese, Hindi, etc.
- "Make it expressive" -- type
/laughand/sighwith Chatterbox Turbo, play back the result - "Shape your sound" -- apply the Robotic or Deep Voice preset, preview it live, then build a custom effects chain with drag-and-drop
- "No limits" -- paste a long script, show it auto-chunk and generate seamlessly
- "Queue and go" -- fire off multiple generations back-to-back without waiting