Overview
LibreChat supports bidirectional voice interactions through Text-to-Speech (TTS) for reading AI responses aloud and Speech-to-Text (STT) for voice input. This enables hands-free conversations and accessibility features.Text-to-Speech (TTS)
Have AI responses read aloud with natural-sounding voices.Supported TTS Providers
- Browser TTS (Default)
- OpenAI TTS
- Custom TTS Provider
Uses the browser’s built-in speech synthesis:
- No configuration required
- Works offline
- Voice quality depends on browser/OS
- No API costs
Using TTS
Playback Speed
Control audio playback rate:- 0.5x: Slower (better comprehension)
- 1.0x: Normal speed
- 1.5x: Faster
- 2.0x: Maximum speed
Auto-Play
Configure automatic TTS for new messages:Speech-to-Text (STT)
Use your voice as input instead of typing.Supported STT Providers
- Browser STT
- OpenAI Whisper
Uses browser’s built-in speech recognition:
- No configuration required
- Works with Chrome, Edge, Safari
- Limited browser support
- Requires microphone permission
Using STT
Configuration
Environment Variables
Complete Speech Configuration
Audio Features
Audio Element
TTS uses HTML5 audio elements:Voice Selection
Choose from available TTS voices:Rate Limiting
Control speech API usage:Accessibility
Speech features enhance accessibility:- Screen reader friendly: ARIA labels on all controls
- Keyboard navigation: Full keyboard support
- Visual feedback: Clear indication of recording/playback state
- Captions: Transcriptions appear as text
Browser Compatibility
- TTS Support
- STT Support
- Chrome: Full support (built-in + API)
- Firefox: Built-in only
- Safari: Built-in only
- Edge: Full support
- Mobile: Limited (iOS Safari, Chrome Android)
Performance Optimization
Audio Caching
TTS audio can be cached to reduce API calls:Lazy Loading
Audio elements load only when needed:Throttling
Prevent spam by throttling requests:Use Cases
Accessibility
Accessibility
- Screen reader users
- Visual impairments
- Reading difficulties
- Language learning
Hands-Free Operation
Hands-Free Operation
- Driving
- Cooking
- Multitasking
- Mobile usage
Content Consumption
Content Consumption
- Long-form content
- Educational material
- News summaries
- Podcast-style listening
Voice Input
Voice Input
- Faster than typing
- Mobile convenience
- Accessibility
- Multilingual input
Troubleshooting
TTS not working
TTS not working
- Check API key configuration
- Verify browser supports audio playback
- Check volume/mute settings
- Look for errors in browser console
No sound output
No sound output
- Check device volume
- Verify audio output device
- Test browser audio (e.g., YouTube)
- Check for browser audio permission
STT not recognizing speech
STT not recognizing speech
- Grant microphone permission
- Check microphone is working (test in another app)
- Reduce background noise
- Speak clearly and at moderate speed
- Try refreshing the page
Poor voice quality
Poor voice quality
- Use
tts-1-hdmodel for better quality - Check network connection
- Try different voice options
- For browser TTS, quality depends on OS
High API costs
High API costs
- Use browser TTS instead of API
- Limit TTS to important messages
- Set rate limits
- Monitor usage in OpenAI dashboard