diff options
author | Eric Laurent <elaurent@google.com> | 2010-02-22 01:37:19 -0800 |
---|---|---|
committer | Eric Laurent <elaurent@google.com> | 2010-02-22 01:37:19 -0800 |
commit | f5fe3949f5db69b19ce3fac7abce2088106f2e2b (patch) | |
tree | 4a7412c83ba329e9ce081e16b44d861dae6812e8 /media/libmedia/AudioSystem.cpp | |
parent | ee3bbefd34fd5330ebbc59175a328197ab7526af (diff) | |
download | frameworks_base-f5fe3949f5db69b19ce3fac7abce2088106f2e2b.zip frameworks_base-f5fe3949f5db69b19ce3fac7abce2088106f2e2b.tar.gz frameworks_base-f5fe3949f5db69b19ce3fac7abce2088106f2e2b.tar.bz2 |
Fix issue 2459650.
This change fixes a problem where an unwanted tone is generated by audio policy manager when a MT call is answered.
This is because of a policy that replaces high visibility system sounds (ringtones, alarms...) by a beep when in call.
There is a transitory phase while the call is being answered where the phone state is changed to IN_CALL but the
ringtone is still playing. The audio policy manager then mutes the end of the ringtone and starts playing a beep
in replacement because the ringtone is categorized as high visibility.
The fix consists in changing the ringtone stream type from high visibility to low visibility. This is not a problem as
the only actual use case where a ringtone would be generated while in call is if another call is received.
But in this case, the phone system does not generate a ringtone but a call waiting tone instead.
It is therefore not required to handle a ringtone as a high visibiltiy tone that must be somehow signaled to the user
while in call.
Diffstat (limited to 'media/libmedia/AudioSystem.cpp')
-rw-r--r-- | media/libmedia/AudioSystem.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/media/libmedia/AudioSystem.cpp b/media/libmedia/AudioSystem.cpp index 5352234..1787e1f 100644 --- a/media/libmedia/AudioSystem.cpp +++ b/media/libmedia/AudioSystem.cpp @@ -694,7 +694,9 @@ bool AudioSystem::isBluetoothScoDevice(audio_devices device) bool AudioSystem::isLowVisibility(stream_type stream) { - if (stream == AudioSystem::SYSTEM || stream == AudioSystem::NOTIFICATION) { + if (stream == AudioSystem::SYSTEM || + stream == AudioSystem::NOTIFICATION || + stream == AudioSystem::RING) { return true; } else { return false; |