Merge "Add MediaRecorder.SystemSource." into sc-dev

This commit is contained in:
TreeHugger Robot
2021-03-18 23:06:41 +00:00
committed by Android (Google) Code Review
2 changed files with 29 additions and 5 deletions

View File

@@ -1988,7 +1988,7 @@ public class AudioManager {
*/
@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 @@ public class AudioManager {
*/
@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 @@ public class AudioManager {
@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 @@ public class AudioManager {
}
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 @@ public class AudioManager {
* @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);
}
/**

View File

@@ -395,6 +395,26 @@ public class MediaRecorder implements AudioRouting,
@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