white-scientist-30911
09/25/2025, 6:26 AMtall-airline-16756
09/25/2025, 6:26 AMtall-airline-16756
09/25/2025, 6:27 AMtts_node and transcription_node can actually share the same text stream when use_tts_aligned_transcript=True is set in the AgentSession configuration. Essentially, this setting uses the pre-processed text from the tts_node (like after filtering) for both TTS synthesis and transcription alignment.
If you'd like to keep the transcription_node unaffected by changes in the tts_node, here are a couple of options you can try:
• Disable use_tts_aligned_transcript in your configuration. This way, the transcription_node will get the original, unmodified text.
• Or, you could add separate text preprocessing logic directly in the transcription_node to override the shared behavior.
Please feel free to reach out if you’d like any help with adjusting these settings or have more questions—I’m here to support you!
Sources: Text and transcriptions | LiveKit Docs | Pipeline nodes and hooks | LiveKit Docs | livekit-agents/livekit/agents/voice/agent_activity.py | Docs::Agents | Pipeline nodes and hooks | LiveKit Docswhite-scientist-30911
09/25/2025, 6:32 AMtall-airline-16756
09/25/2025, 6:32 AMtts_node and transcription_node, please don’t hesitate to let me know—I’m here to help!white-scientist-30911
09/25/2025, 6:33 AMtall-airline-16756
09/25/2025, 6:33 AMwhite-scientist-30911
09/25/2025, 6:33 AMwhite-scientist-30911
09/25/2025, 6:34 AMtall-airline-16756
09/25/2025, 6:36 AMACTIVE state. It might be due to the WebRTC connection still setting up or some connectivity hiccups along the way.
Here are some steps that can help you get past this:
• Make sure the participant is completely connected and in the ACTIVE state before attempting to send any data messages.
• If you encounter data channel errors, try using the IssueFullReconnect method. This triggers a full reconnect and often helps fix connectivity problems.
• Check the quality of your WebRTC connection and how ICE candidates are negotiating. Sometimes, poor network conditions or ICE failures can stop data channels from establishing properly.
• Keep an eye on the data channel states in your client SDK (like Flutter or Swift) to confirm the channels are open and ready before sending data.
If you’re still running into issues after trying these, please don’t hesitate to reach out. I’m here to help you dig deeper and find a solution together.
Sources: lib/src/core/engine.dart | Sources/LiveKit/Core/Transport.swift | CHANGELOG.md | LiveKit Server Components | livekit/livekit_composite | DeepWiki