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: Kevin Rocard <krocard@google.com>
This commit is contained in:
@@ -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;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user