Offline AI Audio Studio for Speech-to-Text, Text-to-Speech, Voice Cloning, and Voice Design
Run private AI audio workflows locally: speech recognition, voice generation, voice cloning, voice design, model downloads, and runtime management in one native C++/Qt desktop app.
Features | Screenshots | Use Cases | Supported Models | Build | Architecture | Roadmap | Acknowledgements
LA Studio version 0.1.9 begins support for Voice Isolator, a local source-separation workflow for extracting vocal and background stems from audio or video files. The new studio supports sherpa-onnx separation models, including UVR-MDX-NET Vocals and Spleeter two-stem models, with progress reporting, waveform previews, playback, and stem export. Processing remains fully offline on the user's machine.
LA Studio version 0.1.8 updates VieNeu-TTS-v3-Turbo support to follow the latest changes from the original author, including updated reference/denoise options and improved native runtime integration. This release also improves TTS cancellation, audio playback controls, model setup guidance, and backend thread management.
LA Studio version 0.1.7 now supports Vietnamese text-to-speech using the fine-tuned Kokoro-82M model. Special thanks to the author iamdinhthuan for the original Kokoro-Vietnamese repository and model training.
LA Studio now supports VieNeu-TTS-v3-Turbo, a high-fidelity 48 kHz Vietnamese-English text-to-speech model by Pham Nguyen Ngoc Bao. Integrated via the native VieNeu-TTS.cpp runtime, it offers hardware acceleration (CPU, CUDA, Vulkan) and real-time progress tracking. The entire pipeline runs completely offline on your hardware to ensure data privacy.
LA Studio now supports NVIDIA Nemotron-3.5 ASR Streaming 0.6B for local multilingual speech-to-text through CrispASR. The Model Gallery can download the Q4_K or F16 GGUF model and compatible CrispASR v0.8.4 CPU, CUDA, or Vulkan runtime packages.
LA Studio, short for Local Audio Studio, is an offline AI audio workstation for creators, developers, researchers, and teams that need local speech AI without sending audio files, prompts, or generated voices to cloud APIs.
The app brings together local speech-to-text, text-to-speech, voice cloning, voice design, model discovery, Hugging Face downloads, runtime installation, hardware checks, and audio preview tools behind a modern desktop interface. It is built with C++17, Qt 6/QML, CMake, and native AI runtime adapters for fast local inference.
| Feature | What it does | Local AI / Runtime focus |
|---|---|---|
| Speech-to-Text Studio | Transcribe microphone input or audio files into text with local speech recognition models. | Whisper, Qwen3-ASR, CrispASR-compatible STT backends |
| Text-to-Speech Studio | Generate natural speech from text with configurable model parameters and audio preview. | Kokoro, Qwen3-TTS, VibeVoice, VieNeu-TTS, OmniVoice, VoxCPM2 |
| Voice Cloning | Create speech from a reference voice sample for local zero-shot voice cloning workflows. | GGUF and native runtime packages |
| Voice Design | Generate or shape voices from descriptive text prompts when supported by the selected model. | VoxCPM2, Qwen3 voice design, OmniVoice-style workflows |
| Voice Isolator | Separate vocals and background audio into two stems from local audio or video files. | sherpa-onnx UVR-MDX-NET and Spleeter models |
| Models Gallery | Browse curated model families, inspect required files, download assets, and manage local model availability. | Integrated catalog and Hugging Face sources |
| Runtime Management | Install, validate, and select compatible CPU, CUDA, Vulkan, or other runtime packages. | Dynamic runtime loading |
| Offline Privacy | Keep audio, prompts, generated speech, and model inference on the user's machine. | No cloud API required for inference |
| Native Desktop UI | Use a responsive Qt Quick interface with audio input controls, waveform previews, history, settings, and logs. | C++17 + Qt 6/QML |
| Home | Models Gallery |
|---|---|
| Speech-to-Text | Text-to-Speech |
|---|---|
| Voice Cloning | Voice Design |
|---|---|
| Runtime Settings | System Logs |
|---|---|
- Run private speech transcription locally for interviews, meetings, research recordings, podcasts, and voice notes.
- Generate local voiceovers for video, learning content, prototypes, narration, and accessibility workflows.
- Test multiple open speech and audio models from a single desktop interface.
- Build and validate model catalogs, runtime packages, and Hugging Face download flows.
- Experiment with voice cloning and voice design without relying on external inference APIs.
- Develop C++/Qt integrations for local AI audio workflows.
flowchart LR
A["Browse curated audio models"] --> B["Download model files and runtime packages"]
B --> C["Validate local files and hardware compatibility"]
C --> D["Run STT, TTS, voice cloning, or voice design locally"]
D --> E["Preview audio, review history, and manage settings"]
- Open the model gallery and choose an STT, TTS, voice cloning, or voice design model family.
- Download the required model files and runtime package from the app.
- LA Studio validates local files, runtime compatibility, and available hardware acceleration.
- Use the studio pages to transcribe audio, generate speech, clone voices, or design voices offline.
LA Studio is catalog-driven, so supported models can evolve without rewriting the core UI. Current catalog families include:
| Category | Example model families |
|---|---|
| Speech-to-Text | Whisper, Qwen3-ASR 0.6B, Qwen3-ASR 1.7B |
| Text-to-Speech | Kokoro 82M, VibeVoice Realtime, VieNeu-TTS v2 Turbo, VieNeu-TTS v3 Turbo, Qwen3-TTS |
| Voice Cloning | VoxCPM2, OmniVoice, Qwen3 custom voice packages |
| Voice Design | VoxCPM2 voice design, Qwen3 voice design packages |
Runtime support is handled through native adapters and dynamic libraries. Depending on model availability and platform support, LA Studio can use CPU, CUDA, Vulkan, and other runtime-specific acceleration paths.
- Language: C++17
- UI: Qt 6, Qt Quick, QML, Qt Quick Controls
- Build: CMake, Ninja, CMake presets
- Dependencies: vcpkg manifest mode, libcurl
- Audio: Qt Multimedia, WAV utilities, waveform provider, audio recorder, audio player
- Model sources: Local catalog data and Hugging Face download sources
- Architecture: MVVM-style QML/C++ controller layer with dynamic AI runtime backends
LA-Studio/
|-- CMakeLists.txt # Top-level CMake build configuration
|-- CMakePresets.json # Build presets
|-- vcpkg.json # C++ dependency manifest
|-- catalog-src/ # Source catalog data for model families
|-- data/ # Generated runtime catalog and schema
|-- examples/ # Prompt and settings examples for model testing
|-- docs/ # Public documentation
| |-- BUILD.md # Windows build guide
| |-- README.md # Documentation index
| `-- screenshots/ # Product screenshots for this README
|-- include/runtimes/ # Runtime interface headers
|-- qml/ # Qt Quick user interface
| |-- Main.qml
| |-- Theme.qml
| |-- pages/
| `-- components/
|-- scripts/ # Bootstrap, build, test, package, and catalog scripts
|-- src/ # C++ application source
| |-- audio/
| |-- controllers/
| |-- core/
| |-- stt/
| `-- tts/
`-- tests/ # Unit tests and mocks
The primary development path is Windows with MSVC 2022, Qt 6, CMake, Ninja, and vcpkg.
- Visual Studio 2022 or Build Tools with the MSVC x64 toolchain
- Qt 6.5+ with the
msvc2022_64kit - CMake 3.21+
- Ninja
- Git
git clone https://github.com/dduongtrandai/LA-Studio.git
cd LA-Studio
.\scripts\bootstrap.batAfter a successful release build, run:
.\out\build\windows-msvc-release\LA Studio.exeFor a faster development build that skips deployment:
.\scripts\bootstrap.bat -SkipDeployFor an explicit Qt path:
.\scripts\bootstrap.bat -QtRoot C:\Qt\6.9.3For detailed setup, troubleshooting, and preset notes, see docs/BUILD.md.
Run the test script from the repository root:
.\scripts\run_tests.batThe tests/ directory includes focused coverage for model path migration, model and runtime flows, download/install behavior, audio preview behavior, file access, history, and STT session logic.
LA Studio uses a QML front end with C++ controllers and core managers. The app keeps model catalog logic, downloads, runtime discovery, hardware checks, audio services, and studio actions behind clear C++ service boundaries.
QML UI
|
| Qt properties, signals, and slots
v
AppController and studio controllers
|
| Session state, user actions, model selection
v
Core services and managers
|
| Catalogs, downloads, settings, registry, hardware, logging
v
Audio services and AI runtimes
|
| STT, TTS, voice cloning, voice design backends
v
Local model files and runtime libraries
Key source areas:
src/controllers/bridges QML screens to application services.src/core/manages catalogs, models, downloads, settings, runtimes, registry, hardware, and logging.src/audio/provides recording, playback, WAV handling, and waveform support.src/stt/contains speech-to-text engine and backend selection.src/tts/contains text-to-speech engine, validation, workers, and backend selection.
LA Studio is designed for local inference. Audio recordings, prompts, generated speech, transcriptions, model selections, and runtime activity stay on the local machine unless the user explicitly downloads model files or runtime packages from external sources.
- Local speech-to-text studio
- Local text-to-speech studio
- Model gallery and managed downloads
- Runtime and hardware management
- Voice cloning workflow foundation
- Voice design workflow foundation
- Broader cross-platform packaging
- Expanded model validation and benchmark reporting
- Advanced timeline-style audio editing
- Additional local speech-to-speech and multimodal audio workflows
Use these Facebook channels for discussion, feedback, and suggestions:
- Facebook Group: LA Studio Community
- Discussion & Feedback Chat: Join the Facebook chat
Contributions are welcome. Good first areas include UI polish, catalog metadata, runtime adapters, tests, documentation, packaging, and model compatibility validation.
Before changing architecture-heavy code, review the public docs in docs/ and keep implementation changes aligned with the existing controller, service, and runtime boundaries.
LA Studio exists because of the open-source runtime, tooling, and model ecosystems around local speech AI. Thank you to the maintainers and contributors of these projects:
- whisper.cpp and OpenAI Whisper for local Whisper speech recognition support.
- CrispASR for GGUF runtime packages used by Qwen3-ASR, Qwen3-TTS, Kokoro, VoxCPM2, and VibeVoice workflows in LA Studio.
- omnivoice.cpp and the k2-fsa / sherpa-onnx ecosystem for OmniVoice runtime integration.
- VieNeu-TTS.cpp for VieNeu-TTS runtime integration.
- The model authors and communities behind Kokoro, Kokoro-Vietnamese, Qwen speech models, VoxCPM2, VibeVoice, OmniVoice, VieNeu-TTS v2 Turbo, and VieNeu-TTS-v3-Turbo.
Runtime packages and model files may have their own licenses, terms, and attribution requirements. Please review the upstream project and model licenses before redistributing any bundled runtime or model assets.
LA Studio is free and open-source software under the GNU Affero General Public License v3.0 only (AGPL-3.0-only).
You may use LA Studio for personal, educational, research, internal business, and commercial creative work, including selling audio, voiceovers, dubbing, audiobooks, or other media produced with the app.
AGPL-3.0 is a network copyleft license. If you modify LA Studio and make that modified version available to others, including over a network, you must make the complete corresponding source code of your modified version available under the same AGPL-3.0 terms.
A commercial license will be available for organizations that want to embed LA Studio, its code, or derivative work in a closed-source or proprietary product or service without the AGPL-3.0 copyleft obligations.
LA Studio helps you run private, local AI audio workflows on your own machine.