Michal Hajek
7187720b23
audiohook.c: Improve frame pairing logic to avoid MixMonitor breakage with mixed codecs
...
This patch adjusts the read/write synchronization logic in audiohook_read_frame_both()
to better handle calls where participants use different codecs or sample sizes
(e.g., alaw vs G.722). The previous hard threshold of 2 * samples caused MixMonitor
recordings to break or stutter when frames were not aligned between both directions.
The new logic uses a more tolerant limit (1.5 * samples), which prevents audio tearing
without causing excessive buffer overruns. This fix specifically addresses issues
with MixMonitor when recording directly on a channel in a bridge using mixed codecs.
Reported-by: Michal Hajek <michal.hajek@daktela.com >
Resolves : #1276
Resolves : #1279
2025-07-03 11:19:33 -05:00
..
2025-03-20 18:29:21 +00:00
2021-11-15 17:33:27 -06:00
2025-03-20 18:29:21 +00:00
2025-03-20 18:29:21 +00:00
2024-07-11 13:23:24 +00:00
2025-03-20 18:29:21 +00:00
2024-01-12 18:32:13 +00:00
2023-04-03 07:58:23 -05:00
2025-03-20 18:29:21 +00:00
2024-01-12 18:32:13 +00:00
2025-06-26 12:12:21 -06:00
2023-01-13 08:32:33 -06:00
2020-06-02 11:35:07 -05:00
2024-11-14 20:01:34 +00:00
2025-03-20 18:29:21 +00:00
2021-12-02 15:02:09 -06:00
2025-03-20 18:29:21 +00:00
2019-09-23 07:35:48 -04:00
2021-12-02 15:02:09 -06:00
2021-12-02 15:02:09 -06:00
2021-12-02 15:02:09 -06:00
2025-07-03 11:19:33 -05:00
2024-09-12 18:46:27 +00:00
2020-04-06 10:23:20 -05:00
2021-12-02 15:02:09 -06:00
2025-03-20 18:29:21 +00:00
2025-03-20 18:29:21 +00:00
2021-12-02 15:02:09 -06:00
2025-03-20 18:29:21 +00:00
2025-01-23 18:39:41 +00:00
2025-03-20 18:29:21 +00:00
2025-03-20 18:29:21 +00:00
2025-03-20 18:29:21 +00:00
2025-03-20 18:29:20 +00:00
2025-06-26 12:12:21 -06:00
2025-06-26 12:12:21 -06:00
2025-06-26 12:15:04 -06:00
2025-06-26 12:12:21 -06:00
2025-06-26 12:12:21 -06:00
2025-07-03 11:19:16 -05:00
2025-06-26 12:12:21 -06:00
2025-06-26 12:12:21 -06:00
2025-03-20 18:29:21 +00:00
2024-01-12 18:32:12 +00:00
2024-03-07 14:18:41 +00:00
2025-03-20 18:29:21 +00:00
2025-03-20 18:29:21 +00:00
2022-03-23 17:13:03 -05:00
2025-03-20 18:29:21 +00:00
2024-11-14 20:01:34 +00:00
2021-12-02 15:02:09 -06:00
2020-04-15 13:56:40 -05:00
2022-07-07 08:19:14 -05:00
2025-03-20 18:29:21 +00:00
2025-03-20 18:29:21 +00:00
2023-01-10 14:07:44 -06:00
2024-09-05 10:40:18 -06:00
2021-12-02 15:02:09 -06:00
2021-12-02 10:37:38 -06:00
2020-06-10 09:33:28 -05:00
2021-12-02 15:02:09 -06:00
2021-12-02 10:37:38 -06:00
2020-04-28 13:05:55 -05:00
2025-03-20 18:29:21 +00:00
2024-11-14 20:01:34 +00:00
2024-03-07 14:18:41 +00:00
2025-03-20 18:29:21 +00:00
2024-09-12 18:46:27 +00:00
2025-03-20 18:29:21 +00:00
2025-03-20 18:29:20 +00:00
2025-05-01 12:41:16 +00:00
2025-03-20 18:29:21 +00:00
2024-03-07 14:18:41 +00:00
2021-12-02 15:02:09 -06:00
2021-01-04 05:00:58 -06:00
2024-03-07 14:18:41 +00:00
2025-06-26 12:15:04 -06:00
2021-11-15 17:33:27 -06:00
2021-11-15 17:33:27 -06:00
2025-05-01 12:41:16 +00:00
2024-03-07 14:18:41 +00:00
2024-03-07 14:18:41 +00:00
2021-12-02 15:02:09 -06:00
2024-05-09 13:48:09 +00:00
2025-05-01 12:41:16 +00:00
2025-03-20 18:29:21 +00:00
2025-03-20 18:29:20 +00:00
2020-10-02 12:58:18 -05:00
2025-03-20 18:29:20 +00:00
2025-01-23 18:39:42 +00:00
2025-06-26 12:12:21 -06:00
2025-03-20 18:29:20 +00:00
2025-03-20 18:29:21 +00:00
2025-03-20 18:29:21 +00:00
2025-03-20 18:29:20 +00:00
2025-06-26 12:15:04 -06:00
2025-05-01 12:41:16 +00:00
2021-12-02 15:02:09 -06:00
2025-03-20 18:29:21 +00:00
2021-12-02 15:02:09 -06:00
2025-03-20 18:29:20 +00:00
2021-12-02 10:37:38 -06:00
2025-06-26 12:12:21 -06:00
2025-03-20 18:29:21 +00:00
2025-03-20 18:29:21 +00:00
2025-03-20 18:29:21 +00:00
2021-12-02 15:02:09 -06:00
2021-08-06 09:04:28 -05:00
2021-12-02 15:02:09 -06:00
2025-03-20 18:29:20 +00:00
2025-03-20 18:29:21 +00:00
2025-03-20 18:29:21 +00:00
2025-03-20 18:29:20 +00:00
2025-03-20 18:29:21 +00:00
2025-03-20 18:29:21 +00:00
2025-03-20 18:29:21 +00:00
2022-01-21 10:06:57 -06:00
2025-03-20 18:29:20 +00:00
2019-11-18 11:05:24 -05:00
2021-12-02 15:02:09 -06:00
2021-11-15 17:33:27 -06:00
2024-05-09 13:48:09 +00:00
2021-12-02 15:02:09 -06:00
2025-03-20 18:29:21 +00:00
2021-11-18 14:46:42 -06:00
2025-03-20 18:29:21 +00:00
2025-03-20 18:29:20 +00:00
2021-12-02 10:37:38 -06:00
2023-06-09 18:19:53 +00:00
2022-05-09 08:20:46 -05:00
2025-03-20 18:29:20 +00:00
2025-03-20 18:29:21 +00:00
2020-05-08 13:44:08 -05:00
2024-11-14 20:01:34 +00:00
2025-06-26 12:15:05 -06:00
2025-03-20 18:29:21 +00:00
2025-03-20 18:29:21 +00:00
2025-05-01 12:41:16 +00:00
2021-12-02 15:02:09 -06:00
2021-09-08 19:10:54 -05:00
2025-01-23 18:39:41 +00:00
2021-12-02 15:02:09 -06:00
2022-03-24 12:00:58 -05:00
2024-03-07 14:18:41 +00:00
2025-03-20 18:29:21 +00:00
2024-01-12 18:32:13 +00:00
2023-03-01 09:50:02 -06:00
2025-03-20 18:29:21 +00:00
2021-12-02 15:02:09 -06:00
2025-03-20 18:29:21 +00:00
2025-03-20 18:29:21 +00:00