From 897ef86b7fbb87ef17d30c584e6cd93abfc342bc Mon Sep 17 00:00:00 2001 From: zbt Date: Thu, 16 Jul 2009 10:41:58 +0800 Subject: Add volume ramping feature - sink modification --- src/pulsecore/sink.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src/pulsecore') diff --git a/src/pulsecore/sink.c b/src/pulsecore/sink.c index d8f3c7d1..29500718 100644 --- a/src/pulsecore/sink.c +++ b/src/pulsecore/sink.c @@ -1599,10 +1599,14 @@ static void sync_input_volumes_within_thread(pa_sink *s) { pa_sink_assert_ref(s); while ((i = PA_SINK_INPUT(pa_hashmap_iterate(s->thread_info.inputs, &state, NULL)))) { + if (pa_atomic_load(&i->before_ramping_v)) + i->thread_info.future_soft_volume = i->soft_volume; + if (pa_cvolume_equal(&i->thread_info.soft_volume, &i->soft_volume)) continue; - i->thread_info.soft_volume = i->soft_volume; + if (!pa_atomic_load(&i->before_ramping_v)) + i->thread_info.soft_volume = i->soft_volume; pa_sink_input_request_rewind(i, 0, TRUE, FALSE, FALSE); } } -- cgit