summaryrefslogtreecommitdiffstats
path: root/media/libmedia
diff options
context:
space:
mode:
authorEric Laurent <elaurent@google.com>2014-11-04 01:37:34 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2014-11-04 01:37:34 +0000
commit461b02d3eccefea48fa15c67a9cd3a5895bd2765 (patch)
tree6fa1b5cef70a6572fa528bcb04f398b185bd3763 /media/libmedia
parent0def1d9e88e5ce567e13e0081f2ee8ae3cba0232 (diff)
parent03fcdcd0aa9758b6d882b18218fcfb9a1ccffdad (diff)
downloadframeworks_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.cpp15
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: