llama.cpp's b10311 fixes Qwen3-TTS double-speech bug
Qwen3-TTS read input twice; v10311 patches the stream.
llama.cpp, the widely-used C/C++ library for running LLMs locally, has shipped a new release tagged b10311. The headline fix is for Qwen3-TTS, a text-to-speech model already supported by the runtime. According to the release notes, the reference implementation has two mutually exclusive prompt layouts: non-streaming mode, where the prefill carries the whole utterance text plus tts_eos summed with codec_pad, and streaming mode, where only the first text token is in prefill while remaining text streams in behind it. The llama.cpp pipeline mistakenly built a non-streaming prefill but used a streaming overlay, causing the talker to see the utterance a second time during generation and read it twice before emitting codec_eos.
The fix, merged via PR #26706, replaces the streaming overlay with a single tts_pad row that properly matches the non-streaming prefill, eliminating the duplicate speech. For developers and users running Qwen3-TTS through llama.cpp, this corrects a glaring quality issue in generated audio. The release also updates the build matrix, offering prebuilt binaries across a wide range of platforms: macOS (Apple Silicon, Intel), iOS, Linux (x64/arm64/s390x with CPU, Vulkan, ROCm, OpenVINO, SYCL), Android, and Windows (CPU, CUDA 12/13, Vulkan, OpenCL, SYCL). Notably, some builds like macOS Intel and openEuler are marked DISABLED, but the rest are ready for download at the llama.cpp GitHub repository.
- Fixes Qwen3-TTS double-reading bug (#26706) in llama.cpp b10311
- Root cause: non-streaming prefill combined with streaming overlay; now aligned
- Prebuilt binaries for macOS, iOS, Linux, Windows, Android with CUDA, Vulkan, OpenVINO, and more
Why It Matters
For developers building TTS apps, this fix ensures Qwen3-TTS doesn't repeat sentences, improving output quality.