Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8ca08a21 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Add @NonNull to Audio Playback Capture functions"

parents d5995a9a 15ed4c36
Loading
Loading
Loading
Loading
+7 −7
Original line number Diff line number Diff line
@@ -23053,7 +23053,7 @@ package android.media {
    ctor public AudioAttributes.Builder();
    ctor public AudioAttributes.Builder(android.media.AudioAttributes);
    method public android.media.AudioAttributes build();
    method public android.media.AudioAttributes.Builder setAllowCapture(boolean);
    method @NonNull public android.media.AudioAttributes.Builder setAllowCapture(boolean);
    method public android.media.AudioAttributes.Builder setContentType(int);
    method public android.media.AudioAttributes.Builder setFlags(int);
    method public android.media.AudioAttributes.Builder setLegacyStreamType(int);
@@ -23392,11 +23392,11 @@ package android.media {
  public static final class AudioPlaybackCaptureConfiguration.Builder {
    ctor public AudioPlaybackCaptureConfiguration.Builder(@NonNull android.media.projection.MediaProjection);
    method public android.media.AudioPlaybackCaptureConfiguration.Builder addMatchingUid(int);
    method public android.media.AudioPlaybackCaptureConfiguration.Builder addMatchingUsage(@NonNull android.media.AudioAttributes);
    method public android.media.AudioPlaybackCaptureConfiguration build();
    method public android.media.AudioPlaybackCaptureConfiguration.Builder excludeUid(int);
    method public android.media.AudioPlaybackCaptureConfiguration.Builder excludeUsage(@NonNull android.media.AudioAttributes);
    method @NonNull public android.media.AudioPlaybackCaptureConfiguration.Builder addMatchingUid(int);
    method @NonNull public android.media.AudioPlaybackCaptureConfiguration.Builder addMatchingUsage(@NonNull android.media.AudioAttributes);
    method @NonNull public android.media.AudioPlaybackCaptureConfiguration build();
    method @NonNull public android.media.AudioPlaybackCaptureConfiguration.Builder excludeUid(int);
    method @NonNull public android.media.AudioPlaybackCaptureConfiguration.Builder excludeUsage(@NonNull android.media.AudioAttributes);
  }
  public final class AudioPlaybackConfiguration implements android.os.Parcelable {
@@ -23497,7 +23497,7 @@ package android.media {
    ctor public AudioRecord.Builder();
    method public android.media.AudioRecord build() throws java.lang.UnsupportedOperationException;
    method public android.media.AudioRecord.Builder setAudioFormat(@NonNull android.media.AudioFormat) throws java.lang.IllegalArgumentException;
    method public android.media.AudioRecord.Builder setAudioPlaybackCaptureConfig(@NonNull android.media.AudioPlaybackCaptureConfiguration);
    method @NonNull public android.media.AudioRecord.Builder setAudioPlaybackCaptureConfig(@NonNull android.media.AudioPlaybackCaptureConfiguration);
    method public android.media.AudioRecord.Builder setAudioSource(int) throws java.lang.IllegalArgumentException;
    method public android.media.AudioRecord.Builder setBufferSizeInBytes(int) throws java.lang.IllegalArgumentException;
  }
+1 −1
Original line number Diff line number Diff line
@@ -630,7 +630,7 @@ public final class AudioAttributes implements Parcelable {
         *                     true to allow apps to capture the audio
         * @return the same Builder instance
         */
        public Builder setAllowCapture(boolean allowCapture) {
        public @NonNull Builder setAllowCapture(boolean allowCapture) {
            if (allowCapture) {
                mFlags &= ~FLAG_NO_CAPTURE;
            } else {
+6 −6
Original line number Diff line number Diff line
@@ -72,7 +72,7 @@ public final class AudioPlaybackCaptureConfiguration {
     *
     * @param audioFormat The format in which to capture the audio.
     */
    AudioMix createAudioMix(AudioFormat audioFormat) {
    @NonNull AudioMix createAudioMix(@NonNull AudioFormat audioFormat) {
        return new AudioMix.Builder(mAudioMixingRule)
                .setFormat(audioFormat)
                .setRouteFlags(AudioMix.ROUTE_FLAG_LOOP_BACK | AudioMix.ROUTE_FLAG_RENDER)
@@ -123,7 +123,7 @@ public final class AudioPlaybackCaptureConfiguration {
         * @throws IllegalStateException if called in conjunction with
         *     {@link #excludeUsage(AudioAttributes)}.
         */
        public Builder addMatchingUsage(@NonNull AudioAttributes audioAttributes) {
        public @NonNull Builder addMatchingUsage(@NonNull AudioAttributes audioAttributes) {
            Preconditions.checkNotNull(audioAttributes);
            Preconditions.checkState(
                    mUsageMatchType != MATCH_TYPE_EXCLUSIVE, ERROR_MESSAGE_MISMATCHED_RULES);
@@ -141,7 +141,7 @@ public final class AudioPlaybackCaptureConfiguration {
         *
         * @throws IllegalStateException if called in conjunction with {@link #excludeUid(int)}.
         */
        public Builder addMatchingUid(int uid) {
        public @NonNull Builder addMatchingUid(int uid) {
            Preconditions.checkState(
                    mUidMatchType != MATCH_TYPE_EXCLUSIVE, ERROR_MESSAGE_MISMATCHED_RULES);
            mAudioMixingRuleBuilder.addMixRule(AudioMixingRule.RULE_MATCH_UID, uid);
@@ -158,7 +158,7 @@ public final class AudioPlaybackCaptureConfiguration {
         * @throws IllegalStateException if called in conjunction with
         *     {@link #addMatchingUsage(AudioAttributes)}.
         */
        public Builder excludeUsage(@NonNull AudioAttributes audioAttributes) {
        public @NonNull Builder excludeUsage(@NonNull AudioAttributes audioAttributes) {
            Preconditions.checkNotNull(audioAttributes);
            Preconditions.checkState(
                    mUsageMatchType != MATCH_TYPE_INCLUSIVE, ERROR_MESSAGE_MISMATCHED_RULES);
@@ -176,7 +176,7 @@ public final class AudioPlaybackCaptureConfiguration {
         *
         * @throws IllegalStateException if called in conjunction with {@link #addMatchingUid(int)}.
         */
        public Builder excludeUid(int uid) {
        public @NonNull Builder excludeUid(int uid) {
            Preconditions.checkState(
                    mUidMatchType != MATCH_TYPE_INCLUSIVE, ERROR_MESSAGE_MISMATCHED_RULES);
            mAudioMixingRuleBuilder.excludeMixRule(AudioMixingRule.RULE_MATCH_UID, uid);
@@ -189,7 +189,7 @@ public final class AudioPlaybackCaptureConfiguration {
         *
         * @throws UnsupportedOperationException if the parameters set are incompatible.
         */
        public AudioPlaybackCaptureConfiguration build() {
        public @NonNull AudioPlaybackCaptureConfiguration build() {
            return new AudioPlaybackCaptureConfiguration(mAudioMixingRuleBuilder.build(),
                                                         mProjection);
        }
+2 −2
Original line number Diff line number Diff line
@@ -618,7 +618,7 @@ public class AudioRecord implements AudioRouting, MicrophoneDirection,
         * @throws IllegalStateException if called in conjunction with {@link #setAudioSource(int)}.
         * @throws NullPointerException if {@code config} is null.
         */
        public Builder setAudioPlaybackCaptureConfig(
        public @NonNull Builder setAudioPlaybackCaptureConfig(
                @NonNull AudioPlaybackCaptureConfiguration config) {
            Preconditions.checkNotNull(
                    config, "Illegal null AudioPlaybackCaptureConfiguration argument");
@@ -647,7 +647,7 @@ public class AudioRecord implements AudioRouting, MicrophoneDirection,
            return this;
        }

        private AudioRecord buildAudioPlaybackCaptureRecord() {
        private @NonNull AudioRecord buildAudioPlaybackCaptureRecord() {
            AudioMix audioMix = mAudioPlaybackCaptureConfiguration.createAudioMix(mFormat);
            MediaProjection projection = mAudioPlaybackCaptureConfiguration.getMediaProjection();
            AudioPolicy audioPolicy = new AudioPolicy.Builder(/*context=*/ null)