From 3000037dec4c8078813d42229d824e04eee80b4a Mon Sep 17 00:00:00 2001 From: filipi87 Date: Fri, 6 Mar 2026 16:16:25 -0300 Subject: [PATCH] Changelog entries for the TTS improvements and fixes. --- changelog/3804.added.md | 1 + changelog/3804.changed.md | 1 + changelog/3804.deprecated.md | 2 ++ changelog/3804.removed.md | 1 + 4 files changed, 5 insertions(+) create mode 100644 changelog/3804.added.md create mode 100644 changelog/3804.changed.md create mode 100644 changelog/3804.deprecated.md create mode 100644 changelog/3804.removed.md diff --git a/changelog/3804.added.md b/changelog/3804.added.md new file mode 100644 index 000000000..0ad7676c9 --- /dev/null +++ b/changelog/3804.added.md @@ -0,0 +1 @@ +- Added concurrent audio context support: `CartesiaTTSService` can now synthesize the next sentence while the previous one is still playing, by setting `pause_frame_processing=False` and routing each sentence through its own audio context queue. diff --git a/changelog/3804.changed.md b/changelog/3804.changed.md new file mode 100644 index 000000000..9caae491f --- /dev/null +++ b/changelog/3804.changed.md @@ -0,0 +1 @@ +- Audio context management (previously in `AudioContextTTSService`) is now built into `TTSService`. All WebSocket providers (`cartesia`, `elevenlabs`, `asyncai`, `inworld`, `rime`, `gradium`, `resembleai`) now inherit from `WebsocketTTSService` directly. Word-timestamp baseline is set automatically on the first audio chunk of each context instead of requiring each provider to call `start_word_timestamps()` in their receive loop. diff --git a/changelog/3804.deprecated.md b/changelog/3804.deprecated.md new file mode 100644 index 000000000..0babfe7d4 --- /dev/null +++ b/changelog/3804.deprecated.md @@ -0,0 +1,2 @@ +- Deprecated `AudioContextTTSService` and `AudioContextWordTTSService`. Subclass `WebsocketTTSService` directly instead; audio context management is now part of the base `TTSService`. +- Deprecated `WordTTSService`, `WebsocketWordTTSService`, and `InterruptibleWordTTSService`. Word timestamp logic is now always active in `TTSService` and no longer needs to be opted into via a subclass. diff --git a/changelog/3804.removed.md b/changelog/3804.removed.md new file mode 100644 index 000000000..1813b5999 --- /dev/null +++ b/changelog/3804.removed.md @@ -0,0 +1 @@ +- ⚠️ Removed `supports_word_timestamps` parameter from `TTSService.__init__()`. Word timestamp logic is now always active. Remove this argument from any custom subclass `super().__init__()` calls.