diff options
author | Eric Laurent <elaurent@google.com> | 2014-11-04 01:37:34 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2014-11-04 01:37:34 +0000 |
commit | 461b02d3eccefea48fa15c67a9cd3a5895bd2765 (patch) | |
tree | 6fa1b5cef70a6572fa528bcb04f398b185bd3763 /media/libmedia | |
parent | 0def1d9e88e5ce567e13e0081f2ee8ae3cba0232 (diff) | |
parent | 03fcdcd0aa9758b6d882b18218fcfb9a1ccffdad (diff) | |
download | frameworks_av-461b02d3eccefea48fa15c67a9cd3a5895bd2765.zip frameworks_av-461b02d3eccefea48fa15c67a9cd3a5895bd2765.tar.gz frameworks_av-461b02d3eccefea48fa15c67a9cd3a5895bd2765.tar.bz2 |
Merge "audio: fix talkback why alarm is playing" into lmp-mr1-dev
Diffstat (limited to 'media/libmedia')
-rw-r--r-- | media/libmedia/AudioTrack.cpp | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/media/libmedia/AudioTrack.cpp b/media/libmedia/AudioTrack.cpp index 97c8d84..082a5e1 100644 --- a/media/libmedia/AudioTrack.cpp +++ b/media/libmedia/AudioTrack.cpp @@ -2135,14 +2135,21 @@ void AudioTrack::setStreamTypeFromAttributes(audio_attributes_t& aa) { // usage to stream type mapping switch (aa.usage) { - case AUDIO_USAGE_ASSISTANCE_ACCESSIBILITY: + case AUDIO_USAGE_ASSISTANCE_ACCESSIBILITY: { // TODO once AudioPolicyManager fully supports audio_attributes_t, - // remove stream change based on phone state - if (AudioSystem::getPhoneState() == AUDIO_MODE_RINGTONE) { + // remove stream change based on stream activity + bool active; + status_t status = AudioSystem::isStreamActive(AUDIO_STREAM_RING, &active, 0); + if (status == NO_ERROR && active == true) { mStreamType = AUDIO_STREAM_RING; break; } - /// FALL THROUGH + status = AudioSystem::isStreamActive(AUDIO_STREAM_ALARM, &active, 0); + if (status == NO_ERROR && active == true) { + mStreamType = AUDIO_STREAM_ALARM; + break; + } + } /// FALL THROUGH case AUDIO_USAGE_MEDIA: case AUDIO_USAGE_GAME: case AUDIO_USAGE_ASSISTANCE_NAVIGATION_GUIDANCE: |