Request support for ElevenLabs voice consistency parameters (seed, previous_request_ids, next_request_ids) in LiveKit's ElevenLabs TTS plugin for improved voice continuity.
Missing Parameters
seed - Deterministic voice generation (integer 0-4294967295)
previous_request_ids - Voice continuity from previous requests (max 3 IDs)
next_request_ids - Voice continuity for upcoming requests (max 3 IDs)
previous_text/next_text - Text context for prosody flow
Current Implementation Analysis
Looking at the source code in tts.py, the _TTSOptions dataclass and constructor currently support:
✅ voice_id, voice_settings, model, encoding
✅ streaming_latency, enable_ssml_parsing, language
❌ Missing voice similarity parameters listed above
Use Case
Essential for maintaining voice consistency in:
Long-form content split across multiple requests
Conversational AI with consistent voice across turns
Content regeneration with similar characteristics
Implementation
Add missing parameters to _TTSOptions dataclass and TTS constructor, then include in WebSocket/API calls to ElevenLabs.
Priority
Medium-High - This would help maintain voice consistency in conversational AI applications where users expect natural, continuous speech across multiple interactions. ElevenLabs sometimes fluctuates significantly when these parameters are not passed, to the point where alternate turns could have different voices talking (although not for all voice IDs).
References
LiveKit ElevenLabs TTS Source Code
ElevenLabs TTS API
Best practices for large text
Request support for ElevenLabs voice consistency parameters (seed, previous_request_ids, next_request_ids) in LiveKit's ElevenLabs TTS plugin for improved voice continuity.
Missing Parameters
Current Implementation Analysis
Looking at the source code in tts.py, the _TTSOptions dataclass and constructor currently support:
✅ voice_id, voice_settings, model, encoding
✅ streaming_latency, enable_ssml_parsing, language
❌ Missing voice similarity parameters listed above
Use Case
Essential for maintaining voice consistency in:
Long-form content split across multiple requests
Conversational AI with consistent voice across turns
Content regeneration with similar characteristics
Implementation
Add missing parameters to _TTSOptions dataclass and TTS constructor, then include in WebSocket/API calls to ElevenLabs.
Priority
Medium-High - This would help maintain voice consistency in conversational AI applications where users expect natural, continuous speech across multiple interactions. ElevenLabs sometimes fluctuates significantly when these parameters are not passed, to the point where alternate turns could have different voices talking (although not for all voice IDs).
References
LiveKit ElevenLabs TTS Source Code
ElevenLabs TTS API
Best practices for large text