From 043b22dbe3b98a8fdd6b0ea77df4089ff44b6539 Mon Sep 17 00:00:00 2001 From: Jean-Michel Trivi Date: Sun, 27 Feb 2011 16:41:21 -0800 Subject: Fix bug 3376700 Volume too loud at lowest setting Change volume attenuation curve to provide more attenuation at low volume settings, and finer steps at high volume. See bug entry for link to doc with curve values. Change-Id: I750548b2161a4c550ef982ba793156e4518119e8 --- services/audioflinger/AudioPolicyManagerBase.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'services') diff --git a/services/audioflinger/AudioPolicyManagerBase.cpp b/services/audioflinger/AudioPolicyManagerBase.cpp index 3082d45..bfc80db 100644 --- a/services/audioflinger/AudioPolicyManagerBase.cpp +++ b/services/audioflinger/AudioPolicyManagerBase.cpp @@ -1889,7 +1889,15 @@ void AudioPolicyManagerBase::initializeVolumeCurves() { mStreams[i].mVolDbAtt[StreamDescriptor::VOLMAX] = 0.0f; } - // TODO add modifications for music to have finer steps below knee1 and above knee2 + // Modification for music: more attenuation for lower volumes, finer steps at high volumes + mStreams[AudioSystem::MUSIC].mVolIndex[StreamDescriptor::VOLMIN] = 1; + mStreams[AudioSystem::MUSIC].mVolDbAtt[StreamDescriptor::VOLMIN] = -58.0f; + mStreams[AudioSystem::MUSIC].mVolIndex[StreamDescriptor::VOLKNEE1] = 20; + mStreams[AudioSystem::MUSIC].mVolDbAtt[StreamDescriptor::VOLKNEE1] = -40.0f; + mStreams[AudioSystem::MUSIC].mVolIndex[StreamDescriptor::VOLKNEE2] = 60; + mStreams[AudioSystem::MUSIC].mVolDbAtt[StreamDescriptor::VOLKNEE2] = -17.0f; + mStreams[AudioSystem::MUSIC].mVolIndex[StreamDescriptor::VOLMAX] = 100; + mStreams[AudioSystem::MUSIC].mVolDbAtt[StreamDescriptor::VOLMAX] = 0.0f; } float AudioPolicyManagerBase::computeVolume(int stream, int index, audio_io_handle_t output, uint32_t device) -- cgit v1.1