This commit is contained in:
k
2026-09-24 11:42:53 +02:00
parent 30918f33e7
commit ac04c674a6
5 changed files with 57 additions and 13 deletions
+12
View File
@@ -608,6 +608,8 @@ const en = {
"vfeat.voice": "Server voice",
"vfeat.voiceHint": "ElevenLabs id / OpenAI name, empty = default",
"vfeat.voicePh": "auto",
"vfeat.noProvider": "No neural provider yet — add ELEVENLABS_API_KEY or OPENAI_API_KEY to activate.",
"center.ttsTitle": "Neural voice playback",
"center.ttsDesc": "Server text-to-speech for message playback (ElevenLabs / OpenAI / piper). Off = browser speech only.",
"voice.engine": "Playback engine",
@@ -1316,6 +1318,8 @@ const es: Dict = {
"vfeat.voice": "Server voice",
"vfeat.voiceHint": "ElevenLabs id / OpenAI name, empty = default",
"vfeat.voicePh": "auto",
"vfeat.noProvider": "No neural provider yet — add ELEVENLABS_API_KEY or OPENAI_API_KEY to activate.",
"center.ttsTitle": "Neural voice playback",
"center.ttsDesc": "Server text-to-speech for message playback (ElevenLabs / OpenAI / piper). Off = browser speech only.",
"voice.engine": "Playback engine",
@@ -2019,6 +2023,8 @@ const fr: Dict = {
"vfeat.voice": "Server voice",
"vfeat.voiceHint": "ElevenLabs id / OpenAI name, empty = default",
"vfeat.voicePh": "auto",
"vfeat.noProvider": "No neural provider yet — add ELEVENLABS_API_KEY or OPENAI_API_KEY to activate.",
"center.ttsTitle": "Neural voice playback",
"center.ttsDesc": "Server text-to-speech for message playback (ElevenLabs / OpenAI / piper). Off = browser speech only.",
"voice.engine": "Playback engine",
@@ -2710,6 +2716,8 @@ const ru: Dict = {
"vfeat.voice": "Server voice",
"vfeat.voiceHint": "ElevenLabs id / OpenAI name, empty = default",
"vfeat.voicePh": "auto",
"vfeat.noProvider": "No neural provider yet — add ELEVENLABS_API_KEY or OPENAI_API_KEY to activate.",
"center.ttsTitle": "Neural voice playback",
"center.ttsDesc": "Server text-to-speech for message playback (ElevenLabs / OpenAI / piper). Off = browser speech only.",
"voice.engine": "Playback engine",
@@ -3406,6 +3414,8 @@ const it: Dict = {
"vfeat.voice": "Server voice",
"vfeat.voiceHint": "ElevenLabs id / OpenAI name, empty = default",
"vfeat.voicePh": "auto",
"vfeat.noProvider": "No neural provider yet — add ELEVENLABS_API_KEY or OPENAI_API_KEY to activate.",
"center.ttsTitle": "Neural voice playback",
"center.ttsDesc": "Server text-to-speech for message playback (ElevenLabs / OpenAI / piper). Off = browser speech only.",
"voice.engine": "Playback engine",
@@ -4093,6 +4103,8 @@ const pt: Dict = {
"vfeat.voice": "Server voice",
"vfeat.voiceHint": "ElevenLabs id / OpenAI name, empty = default",
"vfeat.voicePh": "auto",
"vfeat.noProvider": "No neural provider yet — add ELEVENLABS_API_KEY or OPENAI_API_KEY to activate.",
"center.ttsTitle": "Neural voice playback",
"center.ttsDesc": "Server text-to-speech for message playback (ElevenLabs / OpenAI / piper). Off = browser speech only.",
"voice.engine": "Playback engine",
+3
View File
@@ -90,6 +90,9 @@ export interface SpeakOpts {
export type VoiceTimbre = "masculine" | "feminine" | "any";
/** Stock OpenAI voices (static catalog — selectable even before any key). */
export const OPENAI_STATIC_VOICES = ["alloy", "echo", "fable", "onyx", "nova", "shimmer"];
// Name fragments hinting a masculine / feminine voice (Chrome, Edge,
// Safari and Android voices carry such markers; absence falls back to
// any same-language voice — never an error).