From 962114379c3e9cfa3379d32cf44c2113e5b39e03 Mon Sep 17 00:00:00 2001 From: Gilles Boccon-Gibod Date: Tue, 2 Apr 2024 23:14:32 -0700 Subject: [PATCH] fix #461 --- bumble/a2dp.py | 2 ++ bumble/avdtp.py | 11 ++++++++--- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/bumble/a2dp.py b/bumble/a2dp.py index 653a042..cac14e9 100644 --- a/bumble/a2dp.py +++ b/bumble/a2dp.py @@ -652,7 +652,9 @@ class SbcPacketSource: # Prepare for next packets sequence_number += 1 + sequence_number &= 0xFFFF timestamp += sum((frame.sample_count for frame in frames)) + timestamp &= 0xFFFFFFFF frames = [frame] frames_size = len(frame.payload) else: diff --git a/bumble/avdtp.py b/bumble/avdtp.py index 567d258..713f7b7 100644 --- a/bumble/avdtp.py +++ b/bumble/avdtp.py @@ -325,8 +325,8 @@ class MediaPacket: self.padding = padding self.extension = extension self.marker = marker - self.sequence_number = sequence_number - self.timestamp = timestamp + self.sequence_number = sequence_number & 0xFFFF + self.timestamp = timestamp & 0xFFFFFFFF self.ssrc = ssrc self.csrc_list = csrc_list self.payload_type = payload_type @@ -341,7 +341,12 @@ class MediaPacket: | len(self.csrc_list), self.marker << 7 | self.payload_type, ] - ) + struct.pack('>HII', self.sequence_number, self.timestamp, self.ssrc) + ) + struct.pack( + '>HII', + self.sequence_number, + self.timestamp, + self.ssrc, + ) for csrc in self.csrc_list: header += struct.pack('>I', csrc) return header + self.payload