Skip to content

Commit 38616d6

Browse files
author
aoife cassidy
authored
only subtract 50ms from stream queue once (#256)
1 parent 71b793c commit 38616d6

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

livekit-rtc/livekit/rtc/audio_source.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -91,9 +91,6 @@ async def capture_frame(self, frame: AudioFrame) -> None:
9191
now = time.monotonic()
9292
elapsed = 0.0 if self._last_capture == 0.0 else now - self._last_capture
9393
self._q_size += frame.samples_per_channel / self.sample_rate - elapsed
94-
95-
# remove 50ms to account for processing time (e.g. using wait_for_playour for very small chunks)
96-
self._q_size -= 0.05
9794
self._last_capture = now
9895

9996
if self._join_handle:
@@ -102,7 +99,11 @@ async def capture_frame(self, frame: AudioFrame) -> None:
10299
if self._join_fut.done():
103100
self._join_fut = self._loop.create_future()
104101

105-
self._join_handle = self._loop.call_later(self._q_size, self._release_waiter)
102+
# remove 50ms to account for processing time
103+
# (e.g. using wait_for_playout for very small chunks)
104+
self._join_handle = self._loop.call_later(
105+
self._q_size - 0.05, self._release_waiter
106+
)
106107

107108
req = proto_ffi.FfiRequest()
108109
req.capture_audio_frame.source_handle = self._ffi_handle.handle

0 commit comments

Comments
 (0)