@@ -7,6 +7,129 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77
88<!-- towncrier release notes start -->
99
10+ ## [ 0.0.100] - 2026-01-20
11+
12+ ### Added
13+
14+ - Added Hathora service to support Hathora-hosted TTS and STT models (only
15+ non-streaming)
16+ (PR [ #3169 ] ( https://github.com/pipecat-ai/pipecat/pull/3169 ) )
17+
18+ - Added ` CambTTSService ` , using Camb.ai's TTS integration with MARS models
19+ (mars-flash, mars-pro, mars-instruct) for high-quality text-to-speech
20+ synthesis.
21+ (PR [ #3349 ] ( https://github.com/pipecat-ai/pipecat/pull/3349 ) )
22+
23+ - Added the ` additional_headers ` param to ` WebsocketClientParams ` , allowing
24+ ` WebsocketClientTransport ` to send custom headers on connect, for cases such
25+ as authentication.
26+ (PR [ #3461 ] ( https://github.com/pipecat-ai/pipecat/pull/3461 ) )
27+
28+ - Added ` UserIdleController ` for detecting user idle state, integrated into
29+ ` LLMUserAggregator ` and ` UserTurnProcessor ` via optional ` user_idle_timeout `
30+ parameter. Emits ` on_user_turn_idle ` event for application-level handling.
31+ Deprecated ` UserIdleProcessor ` in favor of the new compositional approach.
32+ (PR [ #3482 ] ( https://github.com/pipecat-ai/pipecat/pull/3482 ) )
33+
34+ - Added ` on_user_mute_started ` and ` on_user_mute_stopped ` event handlers to
35+ ` LLMUserAggregator ` for tracking user mute state changes.
36+ (PR [ #3490 ] ( https://github.com/pipecat-ai/pipecat/pull/3490 ) )
37+
38+ ### Changed
39+
40+ - Enhanced interruption handling in ` AsyncAITTSService ` by supporting
41+ multi-context WebSocket sessions for more robust context management.
42+ (PR [ #3287 ] ( https://github.com/pipecat-ai/pipecat/pull/3287 ) )
43+
44+ - Throttle ` UserSpeakingFrame ` to broadcast at most every 200ms instead of on
45+ every audio chunk, reducing frame processing overhead during user speech.
46+ (PR [ #3483 ] ( https://github.com/pipecat-ai/pipecat/pull/3483 ) )
47+
48+ ### Deprecated
49+
50+ - For consistency with other package names, we just deprecated
51+ ` pipecat.turns.mute ` (introduced in Pipecat 0.0.99) in favor of
52+ ` pipecat.turns.user_mute ` .
53+ (PR [ #3479 ] ( https://github.com/pipecat-ai/pipecat/pull/3479 ) )
54+
55+ ### Fixed
56+
57+ - Corrected TTFB metric calculation in ` AsyncAIHttpTTSService ` .
58+ (PR [ #3287 ] ( https://github.com/pipecat-ai/pipecat/pull/3287 ) )
59+
60+ - Fixed an issue where the "bot-llm-text" RTVI event would not fire for
61+ realtime (speech-to-speech) services:
62+
63+ - ` AWSNovaSonicLLMService `
64+ - ` GeminiLiveLLMService `
65+ - ` OpenAIRealtimeLLMService `
66+ - ` GrokRealtimeLLMService `
67+
68+ The issue was that these services weren't pushing ` LLMTextFrame ` s. Now
69+ they do.
70+ (PR [ #3446 ] ( https://github.com/pipecat-ai/pipecat/pull/3446 ) )
71+
72+ - Fixed an issue where ` on_user_turn_stop_timeout ` could fire while a user is
73+ talking when using ` ExternalUserTurnStrategies ` .
74+ (PR [ #3454 ] ( https://github.com/pipecat-ai/pipecat/pull/3454 ) )
75+
76+ - Fixed an issue where user turn start strategies were not being reset after a
77+ user turn started, causing incorrect strategy behavior.
78+ (PR [ #3455 ] ( https://github.com/pipecat-ai/pipecat/pull/3455 ) )
79+
80+ - Fixed ` MinWordsUserTurnStartStrategy ` to not aggregate transcriptions,
81+ preventing incorrect turn starts when words are spoken with pauses between
82+ them.
83+ (PR [ #3462 ] ( https://github.com/pipecat-ai/pipecat/pull/3462 ) )
84+
85+ - Fixed an issue where Grok Realtime would error out when running with
86+ SmallWebRTC transport.
87+ (PR [ #3480 ] ( https://github.com/pipecat-ai/pipecat/pull/3480 ) )
88+
89+ - Fixed a ` Mem0MemoryService ` issue where passing ` async_mode: true ` was
90+ causing an error. See
91+ https://docs.mem0.ai/platform/features/async-mode-default-change .
92+ (PR [ #3484 ] ( https://github.com/pipecat-ai/pipecat/pull/3484 ) )
93+
94+ - Fixed ` AWSNovaSonicLLMService.reset_conversation() ` , which would previously
95+ error out. Now it successfully reconnects and "rehydrates" from the context
96+ object.
97+ (PR [ #3486 ] ( https://github.com/pipecat-ai/pipecat/pull/3486 ) )
98+
99+ - Fixed ` AzureTTSService ` transcript formatting issues:
100+ - Punctuation now appears without extra spaces (e.g., "Hello!" instead of
101+ "Hello !")
102+ - CJK languages (Chinese, Japanese, Korean) no longer have unwanted spaces
103+ between characters
104+ (PR [ #3489 ] ( https://github.com/pipecat-ai/pipecat/pull/3489 ) )
105+
106+ - Fixed an issue where ` UninterruptibleFrame ` frames would not be preserved in
107+ some cases.
108+ (PR [ #3494 ] ( https://github.com/pipecat-ai/pipecat/pull/3494 ) )
109+
110+ - Fixed memory leak in ` LiveKitTransport ` when ` video_in_enabled ` is ` False ` .
111+ (PR [ #3499 ] ( https://github.com/pipecat-ai/pipecat/pull/3499 ) )
112+
113+ - Fixed an issue in ` AIService ` where unhandled exceptions in ` start() ` ,
114+ ` stop() ` , or ` cancel() ` implementations would prevent ` process_frame() ` to
115+ continue and therefore ` StartFrame ` , ` EndFrame ` , or ` CancelFrame ` from being
116+ pushed downstream, causing the pipeline to not start or stop properly.
117+ (PR [ #3503 ] ( https://github.com/pipecat-ai/pipecat/pull/3503 ) )
118+
119+ - Moved ` NVIDIATTSService ` and ` NVIDIASTTService ` client initialization from
120+ constructor to ` start() ` for better error handling.
121+ (PR [ #3504 ] ( https://github.com/pipecat-ai/pipecat/pull/3504 ) )
122+
123+ - Optimized ` NVIDIATTSService ` to process incoming audio frames immediately.
124+ (PR [ #3509 ] ( https://github.com/pipecat-ai/pipecat/pull/3509 ) )
125+
126+ - Optimized ` NVIDIASTTService ` by removing unnecessary queue and task.
127+ (PR [ #3509 ] ( https://github.com/pipecat-ai/pipecat/pull/3509 ) )
128+
129+ - Fixed a ` CambTTSService ` issue where client was being initialized in the
130+ constructor which wouldn't allow for proper Pipeline error handling.
131+ (PR [ #3511 ] ( https://github.com/pipecat-ai/pipecat/pull/3511 ) )
132+
10133## [ 0.0.99] - 2026-01-13
11134
12135### Added
0 commit comments