Wait for the first streamed word before playing

This commit is contained in:
Fisto
2026-09-21 12:43:44 +02:00
parent baaaba3dcd
commit 7701664bc6
4 changed files with 34 additions and 5 deletions
+3 -1
View File
@@ -170,7 +170,9 @@ from the TTS panel:
s16le, so only the character changes. Echo gained `tts.echoDelayMs` (10-400) and
`tts.echoLevel` (0-0.95) alongside the amount. **Stream word mode** (`tts.streamWords`, on by
default) makes the wrapper write the WAV while it synthesizes, so playback starts on the first
word: measured first sound 0.5 s instead of 2.4 s on a ten-word line. Streaming skips the
word: measured first sound 0.5 s instead of 2.4 s on a ten-word line. The wrapper touches
`<file>.ready` after the first word and the daemon waits for that before starting playback, so a
player never opens the bare WAV header and exits before the words arrive. Streaming skips the
loudness measurement (`VESKSLOP_TTS_STREAM_GAIN_DB` compensates if needed) and cannot use VOX
prosody, which needs the whole sentence.
The Half-Life voices are first-class entries in the voice list: **VOX (Half-Life)** and **HEV