diff --git a/xtts/bridge.js b/xtts/bridge.js index d2783f5..023925c 100644 --- a/xtts/bridge.js +++ b/xtts/bridge.js @@ -214,10 +214,12 @@ async function _runTTSRequest(payload) { */ function streamXTTSAsPCM(text, language, speakerWav, onPcmChunk) { return new Promise((resolve, reject) => { + // Wichtig: speaker_wav MUSS als Query-Key dabei sein (Pydantic required) — + // auch bei default-voice mit leerem Wert. Sonst gibt's HTTP 422. const qs = new URLSearchParams(); qs.set("text", text); qs.set("language", language || "de"); - if (speakerWav) qs.set("speaker_wav", speakerWav); + qs.set("speaker_wav", speakerWav || ""); qs.set("stream_chunk_size", "40"); const url = new URL(XTTS_API_URL);