From d4e31166b7299e0d05c312c8d16c72b1b03af4af Mon Sep 17 00:00:00 2001 From: wm4 Date: Wed, 1 Apr 2015 01:15:12 +0200 Subject: mixer: per-app volume and private volume conflict Per-app volume would change the volume across all instances of the same application, while a private volume control (HAS_PER_APP_VOLUME) obviously should influence only one instance/audio stream only. --- audio/mixer.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'audio') diff --git a/audio/mixer.c b/audio/mixer.c index 9ea08b505e..0eb9c86453 100644 --- a/audio/mixer.c +++ b/audio/mixer.c @@ -19,6 +19,7 @@ #include #include #include +#include #include @@ -251,7 +252,8 @@ static void probe_softvol(struct mixer *mixer) { bool ao_perapp = ao_control(mixer->ao, AOCONTROL_HAS_PER_APP_VOLUME, 0) == 1; bool ao_softvol = ao_control(mixer->ao, AOCONTROL_HAS_SOFT_VOLUME, 0) == 1; - mixer->persistent_volume = !ao_softvol || ao_perapp; + assert(!(ao_perapp && ao_softvol)); + mixer->persistent_volume = !ao_softvol; if (mixer->opts->softvol == SOFTVOL_AUTO) { // No system-wide volume => fine with AO volume control. -- cgit v1.2.3