Overview
Maya Research maintains this integration for its text-to-speech API. UseMayaTTSService for conversational agents: it keeps a
WebSocket open across turns, streams audio as it arrives, and cancels the active
turn when the user interrupts. MayaHttpTTSService uses the HTTP streaming API.
Both services support Maya 2 Native and Maya Calyx. The package handles the wire
protocol, text chunks, and conversion to Pipecat audio frames. You can use it
with an existing STT, LLM, and transport.
Source Repository
Installation, runnable examples, tests, and issue tracker
Maya API Reference
Current models, voices, languages, formats, and API behavior
Installation
Install the community package from its versioned Git release:Prerequisites
Request an API key from Maya Research, then setMAYA_API_KEY in the server environment. Keep the key out of browser code.
Configuration
Pass an API key and optional runtime settings to either service:Settings
Pass these throughMayaTTSService.Settings(...) or
MayaHttpTTSService.Settings(...). Use a
TTSUpdateSettingsFrame to change them
during a conversation.
Maya 2 Native offers
Ananya and Arjun. Maya Calyx has a separate voice roster,
including Aarav and Tarini. When changing models, change the voice in the
same settings update. See the Maya API reference
for the complete voice catalog. Clear a Native-only speed setting with
speed=None when switching to Calyx. On Native, speed=None or speed=1.0
restores normal speed.
Supported language codes are hi, bn, gu, kn, ml, mr, or, pa, ta,
te, and en. en is Indian English. Leave language=None for mixed-language
text. An explicit language that does not match the text can produce the wrong
pronunciation even when the API accepts the request.
HTTP synthesis
Use the HTTP service in the same pipeline position:Usage
Place the service after your LLM and before your transport output. Keep the assistant context aggregator after the output transport:transport, stt, llm, and context_aggregator are your
existing pipeline components. For a complete runnable example, follow the
package README.