Overview
This plugin allows you to use Speechify as a TTS provider for your voice agents.
Installation
Install the plugin from PyPI:
uv add "livekit-agents[speechify]~=1.8"
Authentication
The Speechify plugin requires a Speechify API key .
Set SPEECHIFY_API_KEY in your .env file.
Usage
Use Speechify TTS within an AgentSession or as a standalone speech generator. For example, you can use this TTS in the Voice AI quickstart.
from livekit.plugins import speechifysession = AgentSession(tts=speechify.TTS(model="simba-3.2",voice_id="dominic_32",)# ... llm, stt, etc.)
Parameters
This section describes some of the available parameters. See the plugin reference for a complete list of all available parameters.
voice_idstringDefault: dominic_32ID of the voice to use for synthesizing speech. The voice must support the selected model. Voice IDs with a _32 suffix belong to the simba-3.2 voice roster. Refer to list_voices() method in the plugin reference.
modelstringDefault: simba-3.2ID of the model to use for generation. Use simba-3.2 for English voices or simba-3.0 for non-English voices. The legacy Simba 1.6 models, simba-english and simba-multilingual, are retired for new Speechify integrations. To learn more, see supported models .
languageLanguageCodeLanguage code for the input text. See supported languages for the full list.
loudness_normalizationbooleanDetermines whether to normalize the audio loudness to a standard level. When enabled, loudness normalization aligns the audio output to the following standards: Integrated loudness: -14 LUFS True peak: -2 dBTP Loudness range: 7 LU If disabled, the audio loudness will match the original loudness of the selected voice, which may vary significantly and be either too quiet or too loud. Enabling loudness normalization can increase latency due to additional processing required for audio level adjustments.
text_normalizationbooleanDetermines whether to normalize the text. If enabled, it will transform numbers, dates, etc. into words. For example, "55" is normalized into "fifty five". This can increase latency due to additional processing required for text normalization.
Customizing pronunciation
Speechify supports custom pronunciation with Speech Synthesis Markup Language (SSML), an XML-based markup language that gives you granular control over speech output. With SSML, you can leverage XML tags to craft audio content that delivers a more natural and engaging listening experience. To learn more, see SSML .
Transcription timing
Speechify TTS supports aligned transcription forwarding, which improves transcription synchronization in your frontend. Set use_tts_aligned_transcript=True in your AgentSession configuration to enable this feature. To learn more, see the docs.
Additional resources
The following resources provide more information about using Speechify with LiveKit Agents.