From cc1e2654d30ee7547aebd3c1d5b26802e8bea5ff Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Wed, 9 Apr 2008 01:18:05 +0000 Subject: init min/max latency properly; fix avail_min updating git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2227 fefdeb5f-60dc-0310-8127-8f9354f1896f --- src/modules/module-alsa-sink.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'src/modules/module-alsa-sink.c') diff --git a/src/modules/module-alsa-sink.c b/src/modules/module-alsa-sink.c index 70a94ee3..513350fc 100644 --- a/src/modules/module-alsa-sink.c +++ b/src/modules/module-alsa-sink.c @@ -436,7 +436,7 @@ static pa_usec_t hw_sleep_time(struct userdata *u) { pa_assert(u); - usec = pa_sink_get_requested_latency(u->sink); + usec = pa_sink_get_requested_latency_within_thread(u->sink); if (usec <= 0) usec = pa_bytes_to_usec(u->hwbuf_size, &u->sink->sample_spec); @@ -461,7 +461,7 @@ static void update_hwbuf_unused_frames(struct userdata *u) { pa_assert(u); - if ((usec = pa_sink_get_requested_latency(u->sink)) <= 0) { + if ((usec = pa_sink_get_requested_latency_within_thread(u->sink)) <= 0) { /* Use the full buffer if noone asked us for anything * specific */ u->hwbuf_unused_frames = 0; @@ -499,8 +499,6 @@ static int update_sw_params(struct userdata *u) { } else avail_min = 1; - avail_min = (snd_pcm_uframes_t) -1; - pa_log("setting avail_min=%lu", (unsigned long) avail_min); if ((err = pa_alsa_set_sw_params(u->pcm_handle, avail_min)) < 0) { @@ -1222,8 +1220,10 @@ int pa__init(pa_module*m) { u->sink->thread_info.max_rewind = use_tsched ? u->hwbuf_size : 0; + u->sink->max_latency = pa_bytes_to_usec(u->hwbuf_size, &ss); + if (!use_tsched) - u->sink->min_latency = pa_bytes_to_usec(u->hwbuf_size, &ss); + u->sink->min_latency = u->sink->max_latency; pa_log_info("Using %u fragments of size %lu bytes, buffer time is %0.2fms", nfrags, (long unsigned) u->fragment_size, -- cgit