From bc4cbf90a364b524ee61a8c667dd442137be6c04 Mon Sep 17 00:00:00 2001 From: Seungbae Shin Date: Fri, 24 Jul 2020 19:41:49 +0900 Subject: [PATCH] module-loopback: rollback calculation of requested buffer latency due to bluetooth sync issue [Version] 13.0-9 [Issue Type] audio sync Change-Id: Ic4e7c4cba0fa31f41c33c1c3fc4870de28665f8e --- packaging/pulseaudio.spec | 2 +- src/modules/module-loopback.c | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/packaging/pulseaudio.spec b/packaging/pulseaudio.spec index 04d2c60..1580cd4 100644 --- a/packaging/pulseaudio.spec +++ b/packaging/pulseaudio.spec @@ -3,7 +3,7 @@ Name: pulseaudio Summary: Improved Linux sound server Version: 13.0 -Release: 8 +Release: 9 Group: Multimedia/Audio License: LGPL-2.1 URL: http://pulseaudio.org diff --git a/src/modules/module-loopback.c b/src/modules/module-loopback.c index 09a887d..74d0dc0 100644 --- a/src/modules/module-loopback.c +++ b/src/modules/module-loopback.c @@ -523,6 +523,10 @@ static void memblockq_adjust(struct userdata *u, int64_t latency_offset_usec, bo final_latency = PA_MAX(u->latency, u->output_thread_info.minimum_latency); +#ifdef __TIZEN__ + /* FIXME : rollback upstream code due to bluetooth sync issue */ + requested_buffer_latency = PA_CLIP_SUB(final_latency, latency_offset_usec); +#else /* If source or sink have some large negative latency offset, we might want to * hold more than final_latency in the memblockq */ requested_buffer_latency = (int64_t)final_latency - latency_offset_usec; @@ -532,6 +536,7 @@ static void memblockq_adjust(struct userdata *u, int64_t latency_offset_usec, bo requested_sink_latency = pa_sink_get_requested_latency_within_thread(u->sink_input->sink); if (requested_buffer_latency < (int64_t)requested_sink_latency) requested_buffer_latency = requested_sink_latency; +#endif requested_memblockq_length = pa_usec_to_bytes(requested_buffer_latency, &u->sink_input->sample_spec); current_memblockq_length = pa_memblockq_get_length(u->memblockq); -- 2.7.4