Merge "Add MediaRecorder.SystemSource." into sc-dev
diff --git a/media/java/android/media/AudioManager.java b/media/java/android/media/AudioManager.java
index 9e9d02e..f957a73 100644
--- a/media/java/android/media/AudioManager.java
+++ b/media/java/android/media/AudioManager.java
@@ -1988,7 +1988,7 @@
*/
@SystemApi
@RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING)
- public boolean setPreferredDeviceForCapturePreset(int capturePreset,
+ public boolean setPreferredDeviceForCapturePreset(@MediaRecorder.SystemSource int capturePreset,
@NonNull AudioDeviceAttributes device) {
return setPreferredDevicesForCapturePreset(capturePreset, Arrays.asList(device));
}
@@ -2002,7 +2002,8 @@
*/
@SystemApi
@RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING)
- public boolean clearPreferredDevicesForCapturePreset(int capturePreset) {
+ public boolean clearPreferredDevicesForCapturePreset(
+ @MediaRecorder.SystemSource int capturePreset) {
if (!MediaRecorder.isValidAudioSource(capturePreset)) {
return false;
}
@@ -2024,7 +2025,8 @@
@NonNull
@SystemApi
@RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING)
- public List<AudioDeviceAttributes> getPreferredDevicesForCapturePreset(int capturePreset) {
+ public List<AudioDeviceAttributes> getPreferredDevicesForCapturePreset(
+ @MediaRecorder.SystemSource int capturePreset) {
if (!MediaRecorder.isValidAudioSource(capturePreset)) {
return new ArrayList<AudioDeviceAttributes>();
}
@@ -2036,7 +2038,8 @@
}
private boolean setPreferredDevicesForCapturePreset(
- int capturePreset, @NonNull List<AudioDeviceAttributes> devices) {
+ @MediaRecorder.SystemSource int capturePreset,
+ @NonNull List<AudioDeviceAttributes> devices) {
Objects.requireNonNull(devices);
if (!MediaRecorder.isValidAudioSource(capturePreset)) {
return false;
@@ -2081,7 +2084,8 @@
* @param devices a list of newly set preferred audio devices
*/
void onPreferredDevicesForCapturePresetChanged(
- int capturePreset, @NonNull List<AudioDeviceAttributes> devices);
+ @MediaRecorder.SystemSource int capturePreset,
+ @NonNull List<AudioDeviceAttributes> devices);
}
/**
diff --git a/media/java/android/media/MediaRecorder.java b/media/java/android/media/MediaRecorder.java
index 87e1e5b..dd08d8a 100644
--- a/media/java/android/media/MediaRecorder.java
+++ b/media/java/android/media/MediaRecorder.java
@@ -395,6 +395,26 @@
@Retention(RetentionPolicy.SOURCE)
public @interface Source {}
+ /** @hide */
+ @IntDef({
+ AudioSource.DEFAULT,
+ AudioSource.MIC,
+ AudioSource.VOICE_UPLINK,
+ AudioSource.VOICE_DOWNLINK,
+ AudioSource.VOICE_CALL,
+ AudioSource.CAMCORDER,
+ AudioSource.VOICE_RECOGNITION,
+ AudioSource.VOICE_COMMUNICATION,
+ AudioSource.REMOTE_SUBMIX,
+ AudioSource.UNPROCESSED,
+ AudioSource.VOICE_PERFORMANCE,
+ AudioSource.ECHO_REFERENCE,
+ AudioSource.RADIO_TUNER,
+ AudioSource.HOTWORD,
+ })
+ @Retention(RetentionPolicy.SOURCE)
+ public @interface SystemSource {}
+
// TODO make AudioSource static (API change) and move this method inside the AudioSource class
/**
* @hide