From d90f690275a007c857935b5a5e5a16c9f9952c90 Mon Sep 17 00:00:00 2001 From: Eric Laurent Date: Wed, 8 Feb 2023 11:52:24 +0100 Subject: [PATCH] AudioAttributes: fix setInternalCapturePreset() Commit 5a594729 aligned the value of capture preset for audio attributes in volume groups between java and native, thus allowing AUDIO_SOURCE_INVALID to be passed to setInternalCapturePreset() by the JNI. Bug: 267588552 Test: atest AudioServiceHostTest#testAudioVolumeGroups Change-Id: Ibf496a9cfc83cd3c3e01bab5cb8c26014207cc87 --- media/java/android/media/AudioAttributes.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/media/java/android/media/AudioAttributes.java b/media/java/android/media/AudioAttributes.java index ded9597b68ef9..a5757b908144f 100644 --- a/media/java/android/media/AudioAttributes.java +++ b/media/java/android/media/AudioAttributes.java @@ -1275,7 +1275,10 @@ public final class AudioAttributes implements Parcelable { || (preset == MediaRecorder.AudioSource.VOICE_UPLINK) || (preset == MediaRecorder.AudioSource.VOICE_CALL) || (preset == MediaRecorder.AudioSource.ECHO_REFERENCE) - || (preset == MediaRecorder.AudioSource.ULTRASOUND)) { + || (preset == MediaRecorder.AudioSource.ULTRASOUND) + // AUDIO_SOURCE_INVALID is used by convention on default initialized + // audio attributes + || (preset == MediaRecorder.AudioSource.AUDIO_SOURCE_INVALID)) { mSource = preset; } else { setCapturePreset(preset);