LMNT is a text-to-speech API built for conversational applications, agents, and games. It streams generated audio as binary chunks as soon as synthesis starts, with a 150–200 ms latency figure for streaming, and every voice speaks 31 languages, including switching language mid-sentence.
The API has three shapes: a speech endpoint that streams audio for a given text, a timestamps variant that returns base64 audio plus word-level timing once generation completes, and speech sessions, where you stream text to LMNT as it becomes available (for example from an LLM) and receive audio back in real time. Voice cloning needs a 5–10 second recording. Client libraries exist for Python, TypeScript, and Go, and the service integrates with LiveKit, Pipecat, Vapi, and Vercel.
Features
- Streaming synthesis: audio is returned as binary chunks while generation runs, with 150–200 ms latency for streaming
- Speech sessions: stream partial text over a persistent connection and receive speech incrementally, suited to LLM output
- Word timestamps: a timestamps endpoint returns timing data for subtitles and animation sync
- Voice cloning: create a voice from a 5–10 second recording
- Multilingual voices: all voices speak 31 languages with code-switching within a sentence, and accents can be customized
- SDKs: Python (sync and async), TypeScript (Node.js, Deno, Bun, edge runtimes), and Go
- Integrations: LiveKit, Pipecat, Vapi, and Vercel
- Agent-friendly docs: an llms.txt index lets coding agents read the API docs directly
- No concurrency or rate limits: usage-based pricing with enterprise plans for custom needs
