Troubleshooting Common TTS Problems

A large share of text-to-speech problems trace back to a single mismatch: the language the platform is configured to synthesize does not match the voices and licenses you actually have installed. The most common case — and its fix — is below.

Synthesizing in a language other than US English

The synthesis language defaults to US English (en-US). If you are running text-to-speech in another language and do not have US English TTS licenses or voices installed, the platform will still try to synthesize in US English unless you tell it otherwise — and fail, because nothing is installed to satisfy that request.

The fix is to set the SYNTHESIS_LANGUAGE parameter in your client_property.conf file to a language you do have installed. For example, if you only have UK English licenses, change the line to read:

SYNTHESIS_LANGUAGE = en-GB

Why this especially affects MRCP

MRCP makes this mismatch easy to hit, because an MRCP request does not specify the language when the session is opened — the language is supplied later, after the session is established. When a new MRCP session starts, the platform opens it using the SYNTHESIS_LANGUAGE value from the configuration file. If that value points at a language you have not installed, the session is set up to fail before your request ever specifies otherwise.

Telltale symptom. The most common sign that SYNTHESIS_LANGUAGE is set to a language you do not have is the error -55: Either no TTS servers active or none have the required capabilities. If you see this, confirm that SYNTHESIS_LANGUAGE matches an installed, licensed voice before looking further.

Related Articles


Was this article helpful?