diff options
-rw-r--r-- | media/java/android/media/AudioRecord.java | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/media/java/android/media/AudioRecord.java b/media/java/android/media/AudioRecord.java index ec1a854a66d5..3d5120f86db3 100644 --- a/media/java/android/media/AudioRecord.java +++ b/media/java/android/media/AudioRecord.java @@ -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; } |