Text-to-speech service using ElevenLab’s streaming API with word-level timing
ElevenLabsTTSService
: WebSocket-based with word timestamps and audio context managementElevenLabsHttpTTSService
: HTTP-based for simpler integrationElevenLabsTTSService
is recommended for real-time applications requiring
precise timing.ELEVENLABS_API_KEY
.
TextFrame
- Text content to synthesize into speechTTSSpeakFrame
- Text that should be spoken immediatelyTTSUpdateSettingsFrame
- Runtime configuration updatesLLMFullResponseStartFrame
/ LLMFullResponseEndFrame
- LLM response boundariesTTSStartedFrame
- Signals start of synthesisTTSAudioRawFrame
- Generated audio data chunks with word timingTTSStoppedFrame
- Signals completion of synthesisErrorFrame
- API or processing errorsFeature | ElevenLabsTTSService (WebSocket) | ElevenLabsHttpTTSService (HTTP) |
---|---|---|
Word Timestamps | ✅ Real-time precision | ✅ Batch processing |
Streaming | ✅ Low-latency chunks | ✅ Response streaming |
Audio Context | ✅ Advanced management | ❌ Basic |
Interruption | ✅ Context-aware | ⚠️ Limited |
Connection | WebSocket persistent | HTTP per-request |
View All Supported Languages
Language Code | Description | Service Code |
---|---|---|
Language.AR | Arabic | ar |
Language.BG | Bulgarian | bg |
Language.CS | Czech | cs |
Language.DA | Danish | da |
Language.DE | German | de |
Language.EL | Greek | el |
Language.EN | English | en |
Language.ES | Spanish | es |
Language.FI | Finnish | fi |
Language.FIL | Filipino | fil |
Language.FR | French | fr |
Language.HI | Hindi | hi |
Language.HR | Croatian | hr |
Language.HU | Hungarian | hu |
Language.ID | Indonesian | id |
Language.IT | Italian | it |
Language.JA | Japanese | ja |
Language.KO | Korean | ko |
Language.MS | Malay | ms |
Language.NL | Dutch | nl |
Language.NO | Norwegian | no |
Language.PL | Polish | pl |
Language.PT | Portuguese | pt |
Language.RO | Romanian | ro |
Language.RU | Russian | ru |
Language.SK | Slovak | sk |
Language.SV | Swedish | sv |
Language.TA | Tamil | ta |
Language.TR | Turkish | tr |
Language.UK | Ukrainian | uk |
Language.VI | Vietnamese | vi |
Language.ZH | Chinese | zh |
Language.EN
- EnglishLanguage.ES
- SpanishLanguage.FR
- FrenchLanguage.DE
- GermanLanguage.IT
- ItalianLanguage.JA
- Japaneseeleven_flash_v2_5
, eleven_turbo_v2_5
) for language specification.pcm_8000
pcm_16000
pcm_22050
pcm_24000
(default)pcm_44100
Model | Quality | Latency | Multilingual | Best For |
---|---|---|---|---|
eleven_flash_v2_5 | High | Ultra-low | ✅ | Real-time conversations |
eleven_turbo_v2_5 | High | Ultra-low | ✅ | Real-time conversations |
eleven_multilingual_v2 | High | Medium | ✅ | Quality + languages |
eleven_flash_v2 | High | Low | ❌ | English-only apps |
ElevenLabsTTSService
with your API key and use it in your pipeline:
ElevenLabsHttpTTSService
and use it in a pipeline:
TTSUpdateSettingsFrame
for either service:
ElevenLabsTTSService
for real-time applications with word timestamps and audio context managementstability
and similarity_boost
must be set together for voice customizationeleven_flash_v2_5
, eleven_turbo_v2_5
, eleven_multilingual_v2
)