summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--services/core/java/com/android/server/audio/AudioService.java9
1 files changed, 8 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/audio/AudioService.java b/services/core/java/com/android/server/audio/AudioService.java
index 04deb0271c06..aa21248d12c2 100644
--- a/services/core/java/com/android/server/audio/AudioService.java
+++ b/services/core/java/com/android/server/audio/AudioService.java
@@ -4373,16 +4373,23 @@ public class AudioService extends IAudioService.Stub
}
private int getBluetoothContextualVolumeStream(int mode) {
+ boolean voiceActivityCanOverride = true;
switch (mode) {
case AudioSystem.MODE_IN_COMMUNICATION:
case AudioSystem.MODE_IN_CALL:
return AudioSystem.STREAM_VOICE_CALL;
+ case AudioSystem.MODE_CALL_SCREENING:
+ case AudioSystem.MODE_COMMUNICATION_REDIRECT:
+ case AudioSystem.MODE_CALL_REDIRECT:
+ voiceActivityCanOverride = false;
+ // intended fallthrough
case AudioSystem.MODE_NORMAL:
default:
// other conditions will influence the stream type choice, read on...
break;
}
- if (mVoicePlaybackActive.get()) {
+ if (voiceActivityCanOverride
+ && mVoicePlaybackActive.get()) {
return AudioSystem.STREAM_VOICE_CALL;
}
return AudioSystem.STREAM_MUSIC;