diff --git a/CHANGELOG.md b/CHANGELOG.md index 96fe57619..9badb6c70 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added +- `DailyTransport` now supports setting the audio bitrate to improve audio + quality through the `DailyParams.audio_out_bitrate` parameter. The new + default is 96kbps. + +- `DailyTransport` now uses the number of audio output channels (1 or 2) to set + mono or stereo audio when needed. + - Interruptions support has been added to `TwilioFrameSerializer` when using `FastAPIWebsocketTransport`. diff --git a/src/pipecat/transports/base_transport.py b/src/pipecat/transports/base_transport.py index 72e609263..083aeac37 100644 --- a/src/pipecat/transports/base_transport.py +++ b/src/pipecat/transports/base_transport.py @@ -32,6 +32,7 @@ class TransportParams(BaseModel): audio_out_is_live: bool = False audio_out_sample_rate: int = 16000 audio_out_channels: int = 1 + audio_out_bitrate: int = 96000 audio_in_enabled: bool = False audio_in_sample_rate: int = 16000 audio_in_channels: int = 1 diff --git a/src/pipecat/transports/services/daily.py b/src/pipecat/transports/services/daily.py index bb6032fa4..7cf330b9e 100644 --- a/src/pipecat/transports/services/daily.py +++ b/src/pipecat/transports/services/daily.py @@ -366,6 +366,12 @@ class DailyTransportClient(EventHandler): } }, } + }, + "microphone": { + "sendSettings": { + "channelConfig": "stereo" if self._params.audio_out_channels == 2 else "mono", + "bitrate": self._params.audio_out_bitrate, + } } }, })