Tags: OminiX-ai/OminiX-API
Tags
feat(tts): single-model engine — swap CustomVoice/Base on demand Replace dual-engine TTS (both models loaded, ~6.1 GB) with single-engine that swaps variants on demand (~3 GB, saving 51%). - Qwen3TtsEngine::swap_model() wraps Synthesizer::swap_talker() - Merged cv_engine + base_engine into single engine + variant tracker - ensure_customvoice/ensure_base swap in-place, cold-load only on first use - CloneOneSentence recovers if variant swapped away mid-batch - Eager load now loads only CustomVoice (default) - Model status reports actual variant name Tested: 10 interleaved cycles (20 swaps), no memory leak (+44 MB drift). Closes #10 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>