History log of /hardware/msm7k/libaudio-qsd8k/AudioPolicyManager.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
0cde1c5d66e05bcdfa55cb34c97e9e7a9c78b447 16-Feb-2010 Eric Laurent <elaurent@google.com> Fix issue 2440226: Car dock volume synchronization.

Force stream volume to maximum when playing over A2DP output and
connected to car dock.
/hardware/msm7k/libaudio-qsd8k/AudioPolicyManager.h
59ba5f108773b4fb2b8018000eb848af4920a973 10-Dec-2009 Eric Laurent <elaurent@google.com> Create base class for audio policy manager.

First implementations of audio policy manager in Eclair branch have shown that most code is common to all platforms.
Creating AudioPolicyManagerBase base class will improve code maintainability and readability.
/hardware/msm7k/libaudio-qsd8k/AudioPolicyManager.h
cda6ed314ac73ffaeb0350056c84fc0d8b7b58ea 04-Dec-2009 Eric Laurent <elaurent@google.com> Fix issue 2304701: Media streams can remain muted on A2DP output.

The problem comes from the fact that when a notification is played on both headsets + speaker,
the media strategy is muted. It is only unmuted when a new device is selected on hardwate output
(for instance headset only when music starts).
If an A2DP output is created while music is muted, AudioFlinger with use the last value received
for music volume to initialize the music stream volume on the newly created A2DP output, which in
this case is 0. The code in audio policy manager that applies stream volumes after the A2DP output
has been created is inefficient here, because as music stream is muted, the request to change the
volume is ignored.
As next time music starts it is now played over A2DP output and not on HW output,
no device modification is done on HW output and the music streams remains muted.
This is also applicatble to SYSTEM and TTS streams.

The fix consists in keeping a stream mute count on each output separately instead of a global stream mute count.
Thus when the music volume is re applied after A2DP output creation, the request is not ignored as the music stream is not
muted on A2DP output.
/hardware/msm7k/libaudio-qsd8k/AudioPolicyManager.h
979de023050ebe82680c665259fc833b0a17d3f5 13-Nov-2009 Eric Laurent <elaurent@google.com> Fix issue 2245963: incoming call rings in ringtone-volume level through a wired headset is while listening to music.

When the ringtone is not looped (non factory ringtone), a new AudioTrack is started every time the ringtone is repeated. The second time the track is started, the condition that triggers volume limitation is not true any more as music has been stopped for more than SONIFICATION_HEADSET_MUSIC_DELAY seconds and ringtone volume is not limited.

The fix consists in checking the condition (music playing or stopped for less than SONIFICATION_HEADSET_MUSIC_DELAY) when entering ringtone mode and latch it until we exit ringtone mode.
/hardware/msm7k/libaudio-qsd8k/AudioPolicyManager.h
108ada59a8b049a395cbe2f66c267dca7f533173 31-Oct-2009 Eric Laurent <elaurent@google.com> Fix issue 2226658: Audio path not updated when a headset is plugged or unplugged while recording.

Modified AudioPolicyManager::setDeviceConnectionState() so that the device on active audio input is updated when a device is connected or disconnected.
/hardware/msm7k/libaudio-qsd8k/AudioPolicyManager.h
739de5f36523862a7caa15590bd6b680b6cd2854 05-Nov-2009 Jean-Michel Trivi <jmtrivi@google.com> Fix bug 2194140 Add support for the voice recognition mode.
The voice recognition mode is enabled when using the
AUDIO_SOURCE_VOICE_RECOGNITION audio recording source. The intended
behavior is to use the same microphone input as the default input,
but to configure the A1026 chip in the special mode tuned for
voice recognition, for the matching input. For testing purposes,
two settings will be available for each input, the choice of which
one is used will be dependent on the vr_uses_ns property.
The availability of the voice rec mode is dependent on the enable1026
system property.
Note that the final A1026 configuration modes are not used yet
(not available) but the ones to use are specified in the comments
of the AudioHardware::doAudience_A1026_Control() function at line
952 of AudioHardware.cpp for instance.
Upon availability of other presets, the enable1026 property could
be used to disable or enable even more of the 1026 features.
/hardware/msm7k/libaudio-qsd8k/AudioPolicyManager.h
63e2c0ab3b3cfac68ed3832adfbf4e5a0b32ed8f 03-Nov-2009 Eric Laurent <elaurent@google.com> Log for issue 2203561.

Added detailed dump for AudioPolicyManager when AudioPolicyService is dumped.
/hardware/msm7k/libaudio-qsd8k/AudioPolicyManager.h
7eda9410e218b2f2ff3f776897fbc1b679b6132d 21-Oct-2009 Eric Laurent <elaurent@google.com> Fix issue 2192181: AudioFlinger must provide separated methods to set VOICE_CALL stream volume and down link audio volume.

Modified checkAndSetVolume() method to adjust VOICE_CALL, BLUETOOTH_SCO and DTMF stream volumes to match audio hardware behavior (never 0).
Also do the following adjustments on stream volumes:
- VOICE_CALL:
if in call, force software volume to max to avoid applying the volume twice (software mixer + audio hardware)
send setVoiceVolume() to set in call volume in audio hardware
- BLUETOOTH_SCO:
send setVoiceVolume() with max value because volume is applied by BT headset and should not be also applied by audio hardware.
- DTMF:
if in call and not using the BT SCO device, force software volume to max to avoid applying the volume twice (software mixer + audio hardware)
/hardware/msm7k/libaudio-qsd8k/AudioPolicyManager.h
195d08b5a1d93025464f7347280f182e5da7fda7 10-Oct-2009 Jean-Michel Trivi <jmtrivi@google.com> Fix bug 2172716. Align AudioPolicyManager code in msm7k/libaudio and msm7k/libaudio-qsd8k
/hardware/msm7k/libaudio-qsd8k/AudioPolicyManager.h
2aec439308494aa1607e7c1bb32e99863fe32dc6 02-Sep-2009 Brian Swetland <swetland@google.com> libaudio-qsd8k: very rough cut of 8k audio support

This really needs a lot of cleanup and AudioPolicyManager should be
shared with the 7k bits, etc, etc.
/hardware/msm7k/libaudio-qsd8k/AudioPolicyManager.h