diff --git a/src/auracast/multicast.py b/src/auracast/multicast.py index d9045a9..08571d9 100644 --- a/src/auracast/multicast.py +++ b/src/auracast/multicast.py @@ -836,6 +836,9 @@ class Streamer(): if lc3_frame == b'': # Not all streams may stop at the same time stream_finished[i] = True continue + + for q_idx in range(big.get('num_bis', 1)): + await big['iso_queues'][q_idx].write(lc3_frame) else: # code lc3 on the fly with perf counters # Ensure frames generator exists (so we can aclose() on stop) frames_gen = big.get('frames_gen') diff --git a/src/auracast/utils/read_lc3_file.py b/src/auracast/utils/read_lc3_file.py index d075d07..e46cfed 100644 --- a/src/auracast/utils/read_lc3_file.py +++ b/src/auracast/utils/read_lc3_file.py @@ -21,12 +21,12 @@ def read_lc3_file(filepath): logging.info('frame_duration %s', frame_duration) logging.info('stream_length %s', stream_length) - lc3_bytes= b'' + chunks = [] while True: b = f_lc3.read(2) if b == b'': break lc3_frame_size = struct.unpack('=H', b)[0] - lc3_bytes += f_lc3.read(lc3_frame_size) + chunks.append(f_lc3.read(lc3_frame_size)) - return lc3_bytes \ No newline at end of file + return b''.join(chunks) \ No newline at end of file