[pulseaudio-discuss] [PATCH 3/5] core: Use pa_sink_get_latency_within_thread() in sync-volume code

oku at iki.fi oku at iki.fi
Mon Dec 20 08:47:22 PST 2010


From: Jyri Sarha <jyri.sarha at nokia.com>

---
 src/pulsecore/sink.c |   11 ++---------
 1 files changed, 2 insertions(+), 9 deletions(-)

diff --git a/src/pulsecore/sink.c b/src/pulsecore/sink.c
index acaed15..3cadbff 100644
--- a/src/pulsecore/sink.c
+++ b/src/pulsecore/sink.c
@@ -2906,10 +2906,7 @@ void pa_sink_volume_change_push(pa_sink *s) {
         return;
     }
 
-    /* Get the latency of the sink */
-    if (PA_MSGOBJECT(s)->process_msg(PA_MSGOBJECT(s), PA_SINK_MESSAGE_GET_LATENCY, &nc->at, 0, NULL) < 0)
-        nc->at = 0;
-
+    nc->at = pa_sink_get_latency_within_thread(s);
     nc->at += pa_rtclock_now() + s->thread_info.volume_change_extra_delay;
 
     if (s->thread_info.volume_changes_tail) {
@@ -3009,11 +3006,7 @@ static void pa_sink_volume_change_rewind(pa_sink *s, size_t nbytes) {
     pa_sink_volume_change *c;
     pa_volume_t prev_vol = pa_cvolume_avg(&s->thread_info.current_hw_volume);
     pa_usec_t rewound = pa_bytes_to_usec(nbytes, &s->sample_spec);
-    pa_usec_t limit;
-
-    /* Get the latency of the sink */
-    if (PA_MSGOBJECT(s)->process_msg(PA_MSGOBJECT(s), PA_SINK_MESSAGE_GET_LATENCY, &limit, 0, NULL) < 0)
-        limit = 0;
+    pa_usec_t limit = pa_sink_get_latency_within_thread(s);
 
     pa_log_debug("latency = %lld", limit);
     limit += pa_rtclock_now() + s->thread_info.volume_change_extra_delay;
-- 
1.7.1




More information about the pulseaudio-discuss mailing list