fix(tts): add missing OpenAI TTS voices (ballad, cedar, marin, verse)

Fixes #2393

Add the following OpenAI TTS voices to the OPENAI_TTS_VOICES allowlist:
- ballad
- cedar
- marin
- verse

These voices are listed in OpenAI's /audio/speech API reference but were
missing from the main TTS module. The extensions/voice-call module already
had these voices; this PR syncs src/tts/tts.ts to match.

Note: juniper mentioned in the issue is a ChatGPT app-only voice and is
not available via the TTS API, so it is intentionally not included.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
chenglun.hu 2026-01-28 20:43:39 +08:00
parent da421b9ef7
commit d12ce6bd6b
No known key found for this signature in database
GPG Key ID: 11ECC6E33B83267C

View File

@ -765,13 +765,17 @@ const isCustomOpenAIEndpoint = OPENAI_TTS_BASE_URL !== "https://api.openai.com/v
export const OPENAI_TTS_VOICES = [ export const OPENAI_TTS_VOICES = [
"alloy", "alloy",
"ash", "ash",
"ballad",
"cedar",
"coral", "coral",
"echo", "echo",
"fable", "fable",
"onyx", "marin",
"nova", "nova",
"onyx",
"sage", "sage",
"shimmer", "shimmer",
"verse",
] as const; ] as const;
type OpenAiTtsVoice = (typeof OPENAI_TTS_VOICES)[number]; type OpenAiTtsVoice = (typeof OPENAI_TTS_VOICES)[number];