Commit 8723e74b by samrobinson Committed by microkatz

Add CanIgnoreReturnValue to AudioProcessor#configure + implementations

Although it can be useful to check the output format, it's not required or needed.

For some AudioProcessor implementations, it is stated/obvious that
the output format will match the input, in which case there is no
a need to check the return value.

#cleanup

PiperOrigin-RevId: 483403679
parent e2a77f7b
...@@ -19,6 +19,7 @@ import androidx.media3.common.C; ...@@ -19,6 +19,7 @@ import androidx.media3.common.C;
import androidx.media3.common.Format; import androidx.media3.common.Format;
import androidx.media3.common.util.UnstableApi; import androidx.media3.common.util.UnstableApi;
import androidx.media3.common.util.Util; import androidx.media3.common.util.Util;
import com.google.errorprone.annotations.CanIgnoreReturnValue;
import java.nio.ByteBuffer; import java.nio.ByteBuffer;
import java.nio.ByteOrder; import java.nio.ByteOrder;
...@@ -98,6 +99,7 @@ public interface AudioProcessor { ...@@ -98,6 +99,7 @@ public interface AudioProcessor {
* @return The configured output audio format if this instance is {@link #isActive() active}. * @return The configured output audio format if this instance is {@link #isActive() active}.
* @throws UnhandledAudioFormatException Thrown if the specified format can't be handled as input. * @throws UnhandledAudioFormatException Thrown if the specified format can't be handled as input.
*/ */
@CanIgnoreReturnValue
AudioFormat configure(AudioFormat inputAudioFormat) throws UnhandledAudioFormatException; AudioFormat configure(AudioFormat inputAudioFormat) throws UnhandledAudioFormatException;
/** Returns whether the processor is configured and will process input buffers. */ /** Returns whether the processor is configured and will process input buffers. */
......
...@@ -17,6 +17,7 @@ package androidx.media3.exoplayer.audio; ...@@ -17,6 +17,7 @@ package androidx.media3.exoplayer.audio;
import androidx.annotation.CallSuper; import androidx.annotation.CallSuper;
import androidx.media3.common.util.UnstableApi; import androidx.media3.common.util.UnstableApi;
import com.google.errorprone.annotations.CanIgnoreReturnValue;
import java.nio.ByteBuffer; import java.nio.ByteBuffer;
import java.nio.ByteOrder; import java.nio.ByteOrder;
...@@ -49,6 +50,7 @@ public abstract class BaseAudioProcessor implements AudioProcessor { ...@@ -49,6 +50,7 @@ public abstract class BaseAudioProcessor implements AudioProcessor {
} }
@Override @Override
@CanIgnoreReturnValue
public final AudioFormat configure(AudioFormat inputAudioFormat) public final AudioFormat configure(AudioFormat inputAudioFormat)
throws UnhandledAudioFormatException { throws UnhandledAudioFormatException {
pendingInputAudioFormat = inputAudioFormat; pendingInputAudioFormat = inputAudioFormat;
...@@ -123,6 +125,7 @@ public abstract class BaseAudioProcessor implements AudioProcessor { ...@@ -123,6 +125,7 @@ public abstract class BaseAudioProcessor implements AudioProcessor {
} }
/** Called when the processor is configured for a new input format. */ /** Called when the processor is configured for a new input format. */
@CanIgnoreReturnValue
protected AudioFormat onConfigure(AudioFormat inputAudioFormat) protected AudioFormat onConfigure(AudioFormat inputAudioFormat)
throws UnhandledAudioFormatException { throws UnhandledAudioFormatException {
return AudioFormat.NOT_SET; return AudioFormat.NOT_SET;
......
...@@ -19,6 +19,7 @@ import androidx.annotation.Nullable; ...@@ -19,6 +19,7 @@ import androidx.annotation.Nullable;
import androidx.media3.common.C; import androidx.media3.common.C;
import androidx.media3.common.Format; import androidx.media3.common.Format;
import androidx.media3.common.util.Assertions; import androidx.media3.common.util.Assertions;
import com.google.errorprone.annotations.CanIgnoreReturnValue;
import java.nio.ByteBuffer; import java.nio.ByteBuffer;
/** /**
...@@ -44,6 +45,7 @@ import java.nio.ByteBuffer; ...@@ -44,6 +45,7 @@ import java.nio.ByteBuffer;
} }
@Override @Override
@CanIgnoreReturnValue
public AudioFormat onConfigure(AudioFormat inputAudioFormat) public AudioFormat onConfigure(AudioFormat inputAudioFormat)
throws UnhandledAudioFormatException { throws UnhandledAudioFormatException {
@Nullable int[] outputChannels = pendingOutputChannels; @Nullable int[] outputChannels = pendingOutputChannels;
......
...@@ -18,6 +18,7 @@ package androidx.media3.exoplayer.audio; ...@@ -18,6 +18,7 @@ package androidx.media3.exoplayer.audio;
import androidx.media3.common.C; import androidx.media3.common.C;
import androidx.media3.common.Format; import androidx.media3.common.Format;
import androidx.media3.common.util.Util; import androidx.media3.common.util.Util;
import com.google.errorprone.annotations.CanIgnoreReturnValue;
import java.nio.ByteBuffer; import java.nio.ByteBuffer;
/** /**
...@@ -36,6 +37,7 @@ import java.nio.ByteBuffer; ...@@ -36,6 +37,7 @@ import java.nio.ByteBuffer;
private static final double PCM_32_BIT_INT_TO_PCM_32_BIT_FLOAT_FACTOR = 1.0 / 0x7FFFFFFF; private static final double PCM_32_BIT_INT_TO_PCM_32_BIT_FLOAT_FACTOR = 1.0 / 0x7FFFFFFF;
@Override @Override
@CanIgnoreReturnValue
public AudioFormat onConfigure(AudioFormat inputAudioFormat) public AudioFormat onConfigure(AudioFormat inputAudioFormat)
throws UnhandledAudioFormatException { throws UnhandledAudioFormatException {
@C.PcmEncoding int encoding = inputAudioFormat.encoding; @C.PcmEncoding int encoding = inputAudioFormat.encoding;
......
...@@ -18,6 +18,7 @@ package androidx.media3.exoplayer.audio; ...@@ -18,6 +18,7 @@ package androidx.media3.exoplayer.audio;
import androidx.media3.common.C; import androidx.media3.common.C;
import androidx.media3.common.Format; import androidx.media3.common.Format;
import androidx.media3.common.util.Util; import androidx.media3.common.util.Util;
import com.google.errorprone.annotations.CanIgnoreReturnValue;
import java.nio.ByteBuffer; import java.nio.ByteBuffer;
/** /**
...@@ -36,6 +37,7 @@ import java.nio.ByteBuffer; ...@@ -36,6 +37,7 @@ import java.nio.ByteBuffer;
/* package */ final class ResamplingAudioProcessor extends BaseAudioProcessor { /* package */ final class ResamplingAudioProcessor extends BaseAudioProcessor {
@Override @Override
@CanIgnoreReturnValue
public AudioFormat onConfigure(AudioFormat inputAudioFormat) public AudioFormat onConfigure(AudioFormat inputAudioFormat)
throws UnhandledAudioFormatException { throws UnhandledAudioFormatException {
@C.PcmEncoding int encoding = inputAudioFormat.encoding; @C.PcmEncoding int encoding = inputAudioFormat.encoding;
......
...@@ -23,6 +23,7 @@ import androidx.media3.common.C; ...@@ -23,6 +23,7 @@ import androidx.media3.common.C;
import androidx.media3.common.util.Assertions; import androidx.media3.common.util.Assertions;
import androidx.media3.common.util.UnstableApi; import androidx.media3.common.util.UnstableApi;
import androidx.media3.common.util.Util; import androidx.media3.common.util.Util;
import com.google.errorprone.annotations.CanIgnoreReturnValue;
import java.lang.annotation.Documented; import java.lang.annotation.Documented;
import java.lang.annotation.Retention; import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy; import java.lang.annotation.RetentionPolicy;
...@@ -145,6 +146,7 @@ public final class SilenceSkippingAudioProcessor extends BaseAudioProcessor { ...@@ -145,6 +146,7 @@ public final class SilenceSkippingAudioProcessor extends BaseAudioProcessor {
// AudioProcessor implementation. // AudioProcessor implementation.
@Override @Override
@CanIgnoreReturnValue
public AudioFormat onConfigure(AudioFormat inputAudioFormat) public AudioFormat onConfigure(AudioFormat inputAudioFormat)
throws UnhandledAudioFormatException { throws UnhandledAudioFormatException {
if (inputAudioFormat.encoding != C.ENCODING_PCM_16BIT) { if (inputAudioFormat.encoding != C.ENCODING_PCM_16BIT) {
......
...@@ -22,6 +22,7 @@ import androidx.media3.common.C; ...@@ -22,6 +22,7 @@ import androidx.media3.common.C;
import androidx.media3.common.Format; import androidx.media3.common.Format;
import androidx.media3.common.util.UnstableApi; import androidx.media3.common.util.UnstableApi;
import androidx.media3.common.util.Util; import androidx.media3.common.util.Util;
import com.google.errorprone.annotations.CanIgnoreReturnValue;
import java.nio.ByteBuffer; import java.nio.ByteBuffer;
import java.nio.ByteOrder; import java.nio.ByteOrder;
import java.nio.ShortBuffer; import java.nio.ShortBuffer;
...@@ -142,6 +143,7 @@ public final class SonicAudioProcessor implements AudioProcessor { ...@@ -142,6 +143,7 @@ public final class SonicAudioProcessor implements AudioProcessor {
} }
@Override @Override
@CanIgnoreReturnValue
public AudioFormat configure(AudioFormat inputAudioFormat) throws UnhandledAudioFormatException { public AudioFormat configure(AudioFormat inputAudioFormat) throws UnhandledAudioFormatException {
if (inputAudioFormat.encoding != C.ENCODING_PCM_16BIT) { if (inputAudioFormat.encoding != C.ENCODING_PCM_16BIT) {
throw new UnhandledAudioFormatException(inputAudioFormat); throw new UnhandledAudioFormatException(inputAudioFormat);
......
...@@ -23,6 +23,7 @@ import androidx.media3.common.util.Util; ...@@ -23,6 +23,7 @@ import androidx.media3.common.util.Util;
import androidx.media3.exoplayer.audio.AudioProcessor; import androidx.media3.exoplayer.audio.AudioProcessor;
import androidx.media3.exoplayer.audio.BaseAudioProcessor; import androidx.media3.exoplayer.audio.BaseAudioProcessor;
import androidx.media3.exoplayer.audio.SonicAudioProcessor; import androidx.media3.exoplayer.audio.SonicAudioProcessor;
import com.google.errorprone.annotations.CanIgnoreReturnValue;
import java.nio.ByteBuffer; import java.nio.ByteBuffer;
/** /**
...@@ -52,6 +53,7 @@ import java.nio.ByteBuffer; ...@@ -52,6 +53,7 @@ import java.nio.ByteBuffer;
} }
@Override @Override
@CanIgnoreReturnValue
public AudioFormat onConfigure(AudioFormat inputAudioFormat) public AudioFormat onConfigure(AudioFormat inputAudioFormat)
throws UnhandledAudioFormatException { throws UnhandledAudioFormatException {
return sonicAudioProcessor.configure(inputAudioFormat); return sonicAudioProcessor.configure(inputAudioFormat);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment