OSDN Git Service

AudioService: reduce EU volume warning thresdhold for USB headsets
authorEric Laurent <elaurent@google.com>
Fri, 1 Sep 2017 22:12:42 +0000 (15:12 -0700)
committerDavid Lin <dtwlin@google.com>
Tue, 19 Sep 2017 16:11:24 +0000 (16:11 +0000)
Take into account additional gain due to simultaneous application of
EQ and bass boost by substracting 7dB from current warning message threshold.

Bug: 65225835
Test: check warning displayed when playing over USB headset after boot when
no SIM is present

Change-Id: I1bfcbf571d72122f4df6ff5e40be227c42d555e3
(cherry picked from commit 0e5deb3967398834c9d2321b31d3c56b380e98b5)

services/core/java/com/android/server/audio/AudioService.java

index 0326299..36b3fbf 100644 (file)
@@ -6039,12 +6039,12 @@ public class AudioService extends IAudioService.Stub
     private int mSafeMediaVolumeIndex;
     // mSafeUsbMediaVolumeIndex is used for USB Headsets and is the music volume UI index
     // corresponding to a gain of -30 dBFS in audio flinger mixer.
-    // We remove -15 dBs from the theoretical -15dB to account for the EQ boost when bands are set
-    // to max gain.
+    // We remove -22 dBs from the theoretical -15dB to account for the EQ + bass boost
+    // amplification when both effects are on with all band gains at maximum.
     // This level corresponds to a loudness of 85 dB SPL for the warning to be displayed when
     // the headset is compliant to EN 60950 with a max loudness of 100dB SPL.
     private int mSafeUsbMediaVolumeIndex;
-    private static final float SAFE_VOLUME_GAIN_DBFS = -30.0f;
+    private static final float SAFE_VOLUME_GAIN_DBFS = -37.0f;
     // mSafeMediaVolumeDevices lists the devices for which safe media volume is enforced,
     private final int mSafeMediaVolumeDevices = AudioSystem.DEVICE_OUT_WIRED_HEADSET |
                                                 AudioSystem.DEVICE_OUT_WIRED_HEADPHONE |