Bug 306502 - Bug - KMix / Phonon can only change volume in increments of ~3 %
Summary: Bug - KMix / Phonon can only change volume in increments of ~3 %
Status: RESOLVED NOT A BUG
Alias: None
Product: Phonon
Classification: Frameworks and Libraries
Component: general (show other bugs)
Version: 4.6.0
Platform: Fedora RPMs Linux
: NOR normal
Target Milestone: 4.6.1
Assignee: Harald Sitter
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-09-09 16:28 UTC by Andrei ILIE
Modified: 2012-09-09 18:10 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Andrei ILIE 2012-09-09 16:28:35 UTC
In 2004 was filed bug 86065 against KMix, expressing similar complaints... The resolution on that old report was "RESOLVED INVALID" based on the fact that "there are, in fact, only 32 steps (0-31) in the entire volume range for most soundcards. ALSA at least exposes this. [...] KMix cannot be more precise than your hardware".

SOLUTION - Abstraction, baby ! - KMix / Phonon are higher level interfaces, so they should be able to set the volume (for every channel, not just Master) in a range of [0-100%] with an increment of 1% or, preferably, 5%. They should also perform the necessary translations / approximations in order to translate the users wishes to the backend.

Reproducible: Always




$ yum list installed phonon*
phonon.x86_64, v4.6.0-3.fc17
phonon-backend-vlc.x86_64, v0.6.0-1.fc17

$ uname -a
Linux localhost.localdomain 3.5.3-1.fc17.x86_64 #1 SMP Wed Aug 29 18:46:34 UTC 2012
Comment 1 Harald Sitter 2012-09-09 16:37:40 UTC
        /**
         * This is the current volume of the output in decibel.
         *
         * 0 dB means no change in volume, -6dB means an attenuation of the
         * voltage to 50% and an attenuation of the power to 25%, -inf dB means
         * silence.
         *
         * \see volume
         */
        Q_PROPERTY(qreal volumeDecibel READ volumeDecibel WRITE setVolumeDecibel)
Comment 2 Andrei ILIE 2012-09-09 17:55:05 UTC
@Harald: This issue is in fact valid - KMix / Phonon should offer a dB agnostic user experience.

At least, please, mark this issue as a "feature request" because is __not__ invalid.

Thx
Comment 3 Harald Sitter 2012-09-09 18:10:40 UTC
        /**
         * This is the current loudness of the output (it is using Stevens' law
         * to calculate the change in voltage internally).
         *
         * \see volumeDecibel
         */
        Q_PROPERTY(qreal volume READ volume WRITE setVolume NOTIFY volumeChanged)


Also note that kmix and phonon are not the same, they do not share one bit of code.