agreeable-advantage-5095
03/19/2026, 9:23 PMtall-airline-16756
03/19/2026, 9:23 PMtall-airline-16756
03/19/2026, 9:23 PMTTS du plugin Cartesia a https://api.cartesia.ai comme valeur par défaut pour base_url au lieu d’un lien WebSocket.
• La valeur par défaut https://api.cartesia.ai est l’endpoint HTTP REST du service Cartesia. Le plugin est configuré par défaut pour des requêtes HTTP (request/response) plutôt que pour du streaming WebSocket.
• Le choix reflète un usage typique synchrone/non‑streaming où on envoie du texte et on reçoit un fichier audio ou des données en retour via HTTP.
• Le framework LiveKit supporte des architectures de streaming (certains autres TTS montrent des flux WebSocket en interne), donc le fait que Cartesia utilise HTTP par défaut ne veut pas dire que le streaming est impossible — juste que ce n’est pas la configuration initiale documentée.
• Si vous avez besoin de streaming WebSocket pour la synthèse vocale, cela peut être fait via une configuration personnalisée du plugin (le WebSocket n’est pas le comportement par défaut).
Souhaitez‑vous :
• que je vous montre comment configurer le plugin Cartesia pour utiliser WebSocket (si l’API Cartesia le permet dans votre accès), ou
• que je vous propose une alternative déjà orientée streaming (ex. une autre TTS qui expose WebSocket) ?
Donnez-moi votre préférence et je vous guide étape par étape.
Sources: Building an Automated IVR Menu Caller | LiveKit Documentation | Cartesia TTS | LiveKit Documentation | Build a salary negotiation coach with a LemonSlice avatar | LiveKit | examples/voice_agents | livekit/livekit_composite | DeepWiki, with interactive elementsagreeable-advantage-5095
03/19/2026, 9:45 PMtall-airline-16756
03/19/2026, 9:45 PMbase_url par un ws:// dans l’init.
Exemple minimal (Python)
1. Instanciez le TTS.
2. Ouvrez le stream et poussez du texte.
from livekit.plugins import cartesia
tts = cartesia.TTS(model="sonic-3") # utilise WebSocket pour le streaming
stream = tts.stream() # ouvre la connexion WebSocket en interne
stream.push_text("Bonjour, ceci est un test de streaming.")
# Traitez les frames audio renvoyées par le stream selon votre pipeline
Points utiles
• Le stream gère la tokenisation, l’envoi des morceaux de texte, la réception d’audio (souvent en base64 PCM) et la conversion en frames audio pour lecture.
• Vous pouvez contrôler le comportement du streaming via options comme streamingLatency, chunkLengthSchedule ou autoMode si vous avez besoin d’ajuster latence/taille des chunks.
• L’endpoint HTTP (https://api.cartesia.ai) reste le default pour les appels REST ; mais la méthode .stream() utilise WebSocket en interne pour le streaming temps réel.
Souhaitez‑vous que je :
• vous donne un exemple complet montrant la réception/décodage des frames audio et la lecture (ou sauvegarde en fichier), ou
• vous montre comment ajuster streamingLatency / chunkLengthSchedule pour réduire la latence ?
Dites‑moi ce dont vous avez besoin et je vous fournis l’exemple adapté.
Sources: examples/voice_agents | livekit/livekit_composite | DeepWiki, with interactive elements