diff --git a/packages/api/src/routers/text_to_speech.ts b/packages/api/src/routers/text_to_speech.ts index 2a6a1b320..f7dd7bdcc 100644 --- a/packages/api/src/routers/text_to_speech.ts +++ b/packages/api/src/routers/text_to_speech.ts @@ -69,6 +69,7 @@ export function textToSpeechRouter() { options: { primaryVoice: userPersonalization?.speechVoice || 'Axel', secondaryVoice: 'Evelyn', + language: page.language, }, }) @@ -81,8 +82,8 @@ export function textToSpeechRouter() { voice: utterance.voice || 'Axel', priority: 'high', isUltraRealisticVoice: true, - language: page.language || 'English', - rate: '1.1', + language: speechFile.language, + rate: userPersonalization?.speechRate?.toString() || '1.1', }) logger.info('Start Text to speech task', { taskName }) } diff --git a/packages/text-to-speech/src/htmlToSsml.ts b/packages/text-to-speech/src/htmlToSsml.ts index 9b1a32d87..8fb0b7e35 100644 --- a/packages/text-to-speech/src/htmlToSsml.ts +++ b/packages/text-to-speech/src/htmlToSsml.ts @@ -44,7 +44,7 @@ export type SSMLOptions = { const DEFAULT_LANGUAGE = 'en-US' const DEFAULT_VOICE = 'en-US-JennyNeural' const DEFAULT_SECONDARY_VOICE = 'en-US-GuyNeural' -const DEFAULT_RATE = '1.0' +const DEFAULT_RATE = '1.1' const ANCHOR_ELEMENTS_BLOCKED_ATTRIBUTES = [ 'omnivore-highlight-id',