diff options
| author | 2019-03-28 20:14:17 +0000 | |
|---|---|---|
| committer | 2019-03-28 20:14:17 +0000 | |
| commit | dcb8edfc4d7bc4b99640350d4e7c3181fcbb662f (patch) | |
| tree | 229be119459bf1fbb0a6593c6eb884789903f6bd | |
| parent | cb1f204387bdbfd2c49398d3aa649f3d70b6b295 (diff) | |
| parent | aff8c04b25364bdfbcfc719d75057ded46edc225 (diff) | |
Merge "MediaRecorder: Add IntDef to setAudioSource"
| -rw-r--r-- | media/java/android/media/AudioRecord.java | 3 | ||||
| -rw-r--r-- | media/java/android/media/MediaRecorder.java | 23 |
2 files changed, 23 insertions, 3 deletions
diff --git a/media/java/android/media/AudioRecord.java b/media/java/android/media/AudioRecord.java index a7760a80974d..2dd7f0fcd12b 100644 --- a/media/java/android/media/AudioRecord.java +++ b/media/java/android/media/AudioRecord.java @@ -25,6 +25,7 @@ import android.annotation.SystemApi; import android.annotation.TestApi; import android.annotation.UnsupportedAppUsage; import android.app.ActivityThread; +import android.media.MediaRecorder.Source; import android.media.audiopolicy.AudioMix; import android.media.audiopolicy.AudioPolicy; import android.media.projection.MediaProjection; @@ -539,7 +540,7 @@ public class AudioRecord implements AudioRouting, MicrophoneDirection, * @return the same Builder instance. * @throws IllegalArgumentException */ - public Builder setAudioSource(int source) throws IllegalArgumentException { + public Builder setAudioSource(@Source int source) throws IllegalArgumentException { Preconditions.checkState( mAudioPlaybackCaptureConfiguration == null, ERROR_MESSAGE_SOURCE_MISMATCH); diff --git a/media/java/android/media/MediaRecorder.java b/media/java/android/media/MediaRecorder.java index 575a0bb03f7b..63b22df12953 100644 --- a/media/java/android/media/MediaRecorder.java +++ b/media/java/android/media/MediaRecorder.java @@ -18,6 +18,7 @@ package android.media; import android.annotation.CallbackExecutor; import android.annotation.FloatRange; +import android.annotation.IntDef; import android.annotation.NonNull; import android.annotation.Nullable; import android.annotation.RequiresPermission; @@ -42,6 +43,8 @@ import java.io.File; import java.io.FileDescriptor; import java.io.IOException; import java.io.RandomAccessFile; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; import java.lang.ref.WeakReference; import java.util.ArrayList; import java.util.List; @@ -355,6 +358,22 @@ public class MediaRecorder implements AudioRouting, public static final int HOTWORD = 1999; } + /** @hide */ + @IntDef({ + AudioSource.DEFAULT, + AudioSource.MIC, + AudioSource.VOICE_UPLINK, + AudioSource.VOICE_DOWNLINK, + AudioSource.VOICE_CALL, + AudioSource.CAMCORDER, + AudioSource.VOICE_RECOGNITION, + AudioSource.VOICE_COMMUNICATION, + AudioSource.UNPROCESSED, + AudioSource.VOICE_PERFORMANCE, + }) + @Retention(RetentionPolicy.SOURCE) + public @interface Source {} + // TODO make AudioSource static (API change) and move this method inside the AudioSource class /** * @hide @@ -547,11 +566,11 @@ public class MediaRecorder implements AudioRouting, * to be specified before setting recording-parameters or encoders. Call * this only before setOutputFormat(). * - * @param audio_source the audio source to use + * @param audioSource the audio source to use * @throws IllegalStateException if it is called after setOutputFormat() * @see android.media.MediaRecorder.AudioSource */ - public native void setAudioSource(int audio_source) + public native void setAudioSource(@Source int audioSource) throws IllegalStateException; /** |