Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit be64d36e authored by Kevin Rocard's avatar Kevin Rocard
Browse files

Register policy with AudioManager



The policy was previously not registered. Resulting in a failure when
starting the recording.

Test: atest android.media.cts.AudioPlaybackCaptureTest#testCaptureMediaUsage
Bug: 111453086
Change-Id: Ib0bbdfefd644c2f8e389baafdc1fc3ad548dcc4c
Signed-off-by: default avatarKevin Rocard <krocard@google.com>
parent 92488ea2
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -653,7 +653,16 @@ public class AudioRecord implements AudioRouting, MicrophoneDirection,
            AudioPolicy audioPolicy = new AudioPolicy.Builder(/*context=*/ null)
                    .setMediaProjection(projection)
                    .addMix(audioMix).build();

            int error = AudioManager.registerAudioPolicyStatic(audioPolicy);
            if (error != 0) {
                throw new UnsupportedOperationException("Error: could not register audio policy");
            }

            AudioRecord record = audioPolicy.createAudioRecordSink(audioMix);
            if (record == null) {
                throw new UnsupportedOperationException("Cannot create AudioRecord");
            }
            record.unregisterAudioPolicyOnRelease(audioPolicy);
            return record;
        }