Bug 302361

Summary: Don’t "tick" when volume is full
Product: [Applications] kmix Reporter: Kai Uwe Broulik <kde>
Component: On-Screen-Display (OSD)Assignee: Christian Esken <esken>
Status: RESOLVED FIXED    
Severity: minor CC: artjom.simon, jjm
Priority: NOR    
Version First Reported In: unspecified   
Target Milestone: ---   
Platform: unspecified   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description Kai Uwe Broulik 2012-06-22 18:10:43 UTC
In KDE 4.9 KMix "ticks" when changing the volume via keystroke. It should not continue to tick when the volume has reached 100%. Only when you pressed the Up key and have not pressed it before then it may tick.

Reproducible: Always

Steps to Reproduce:
1. Have volume at 0%
2. Hold "Volume Up" key
3.
Actual Results:  
KMix ticks continuously

Expected Results:  
KMix stops to tick at 100% except if you release the Volume Up key and press it again, then it will tick another time.
Comment 1 Christian Esken 2012-06-26 20:18:12 UTC
I can reproduce that.
Comment 2 Jonathan Marten 2021-03-01 18:33:38 UTC
Git commit 5749abf20cbcde1c84d7d1e56431ebc5c33daf3c by Jonathan Marten.
Committed on 01/03/2021 at 18:06.
Pushed by marten into branch 'master'.

Make the volume feedback implementation common to all backends

Using a new singleton class VolumeFeedback, which receives volume
change events via a ControlManager announcement and plays the sound
for a volume change on the current global master device.  This also
handles rate limiting and stopping at maximum volume as per the
referenced bugs.  Remove the corresponding code from the PulseAudio
and ALSA backends.

In theory this means that volume feedback will also work with OSS,
assuming that Canberra supports OSS output.
Related: bug 302474, bug 323608

M  +6    -1    CMakeLists.txt
M  +12   -15   apps/kmixwindow.cpp
M  +1    -5    apps/kmixwindow.h
A  +243  -0    apps/volumefeedback.cpp     [License: LGPL (v2+)]
A  +64   -0    apps/volumefeedback.h     [License: LGPL (v2+)]
M  +0    -111  backends/mixer_alsa9.cpp
M  +3    -12   backends/mixer_alsa9.h
M  +7    -73   backends/mixer_pulse.cpp
M  +0    -2    backends/mixer_pulse.h

https://invent.kde.org/multimedia/kmix/commit/5749abf20cbcde1c84d7d1e56431ebc5c33daf3c
Comment 3 Jonathan Marten 2021-03-05 20:33:18 UTC
The previous commit should have fixed the problem - the feedback does not now sound unless the volume actually changes.  Please reopen the bug if still observed.