From f20abdd4cf3c0466963f65417706baccf7e37eea Mon Sep 17 00:00:00 2001 From: Ryan Gaus Date: Wed, 7 Jan 2026 09:05:04 +1100 Subject: [PATCH 1/5] feat: add userdata to audioframe constructor This was raised here: https://github.com/livekit/plugins-ai-coustics-internal/pull/30#discussion_r2666440822 --- livekit-rtc/livekit/rtc/audio_frame.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/livekit-rtc/livekit/rtc/audio_frame.py b/livekit-rtc/livekit/rtc/audio_frame.py index 3ed9a461..13cdf6c4 100644 --- a/livekit-rtc/livekit/rtc/audio_frame.py +++ b/livekit-rtc/livekit/rtc/audio_frame.py @@ -33,6 +33,7 @@ def __init__( sample_rate: int, num_channels: int, samples_per_channel: int, + userdata: dict[str, Any] = {}, ) -> None: """ Initialize an AudioFrame instance. @@ -64,7 +65,7 @@ def __init__( self._sample_rate = sample_rate self._num_channels = num_channels self._samples_per_channel = samples_per_channel - self._userdata: dict[str, Any] = {} + self._userdata: dict[str, Any] = userdata @staticmethod def create(sample_rate: int, num_channels: int, samples_per_channel: int) -> "AudioFrame": From 518e541eb8b6d2a175205c60b0b22ad3466f733b Mon Sep 17 00:00:00 2001 From: Ryan Gaus Date: Wed, 7 Jan 2026 09:23:34 +1100 Subject: [PATCH 2/5] Update livekit-rtc/livekit/rtc/audio_frame.py MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Théo Monnom --- livekit-rtc/livekit/rtc/audio_frame.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/livekit-rtc/livekit/rtc/audio_frame.py b/livekit-rtc/livekit/rtc/audio_frame.py index 13cdf6c4..bb0ad5f5 100644 --- a/livekit-rtc/livekit/rtc/audio_frame.py +++ b/livekit-rtc/livekit/rtc/audio_frame.py @@ -33,7 +33,7 @@ def __init__( sample_rate: int, num_channels: int, samples_per_channel: int, - userdata: dict[str, Any] = {}, + userdata: dict[str, Any] | None = None, ) -> None: """ Initialize an AudioFrame instance. From 20fc6bc11ea4cbcaf607c861b6aa42cb6b54507c Mon Sep 17 00:00:00 2001 From: Ryan Gaus Date: Wed, 7 Jan 2026 09:25:54 +1100 Subject: [PATCH 3/5] fix: apply other suggestion and flx type error --- livekit-rtc/livekit/rtc/audio_frame.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/livekit-rtc/livekit/rtc/audio_frame.py b/livekit-rtc/livekit/rtc/audio_frame.py index bb0ad5f5..81299a17 100644 --- a/livekit-rtc/livekit/rtc/audio_frame.py +++ b/livekit-rtc/livekit/rtc/audio_frame.py @@ -33,6 +33,7 @@ def __init__( sample_rate: int, num_channels: int, samples_per_channel: int, + *, userdata: dict[str, Any] | None = None, ) -> None: """ @@ -65,7 +66,7 @@ def __init__( self._sample_rate = sample_rate self._num_channels = num_channels self._samples_per_channel = samples_per_channel - self._userdata: dict[str, Any] = userdata + self._userdata: = {} if userdata is None else userdata @staticmethod def create(sample_rate: int, num_channels: int, samples_per_channel: int) -> "AudioFrame": From 3a22df8e48bbb2188ea1807dfd6c3912129327c8 Mon Sep 17 00:00:00 2001 From: Ryan Gaus Date: Wed, 7 Jan 2026 09:28:05 +1100 Subject: [PATCH 4/5] fix: remove extra colon --- livekit-rtc/livekit/rtc/audio_frame.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/livekit-rtc/livekit/rtc/audio_frame.py b/livekit-rtc/livekit/rtc/audio_frame.py index 81299a17..3922288b 100644 --- a/livekit-rtc/livekit/rtc/audio_frame.py +++ b/livekit-rtc/livekit/rtc/audio_frame.py @@ -66,7 +66,7 @@ def __init__( self._sample_rate = sample_rate self._num_channels = num_channels self._samples_per_channel = samples_per_channel - self._userdata: = {} if userdata is None else userdata + self._userdata = {} if userdata is None else userdata @staticmethod def create(sample_rate: int, num_channels: int, samples_per_channel: int) -> "AudioFrame": From 5a4a383d319d22d19b75016b48283aa41093e648 Mon Sep 17 00:00:00 2001 From: Ryan Gaus Date: Wed, 7 Jan 2026 09:30:27 +1100 Subject: [PATCH 5/5] fix: swap out pipe for typing.union --- livekit-rtc/livekit/rtc/audio_frame.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/livekit-rtc/livekit/rtc/audio_frame.py b/livekit-rtc/livekit/rtc/audio_frame.py index 3922288b..c4f1943c 100644 --- a/livekit-rtc/livekit/rtc/audio_frame.py +++ b/livekit-rtc/livekit/rtc/audio_frame.py @@ -34,7 +34,7 @@ def __init__( num_channels: int, samples_per_channel: int, *, - userdata: dict[str, Any] | None = None, + userdata: Union[dict[str, Any], None] = None, ) -> None: """ Initialize an AudioFrame instance.