Commit 607e1171 by andrewlewis Committed by kim-vde

Remove deprecated AudioSink methods

Also do some minor cleanup in DefaultAudioSink.

PiperOrigin-RevId: 326012441
parent 82b26357
...@@ -20,7 +20,6 @@ import androidx.annotation.IntDef; ...@@ -20,7 +20,6 @@ import androidx.annotation.IntDef;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import com.google.android.exoplayer2.C; import com.google.android.exoplayer2.C;
import com.google.android.exoplayer2.Format; import com.google.android.exoplayer2.Format;
import com.google.android.exoplayer2.PlaybackParameters;
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;
...@@ -298,19 +297,6 @@ public interface AudioSink { ...@@ -298,19 +297,6 @@ public interface AudioSink {
*/ */
boolean hasPendingData(); boolean hasPendingData();
/**
* @deprecated Use {@link #setPlaybackSpeed(float)} and {@link #setSkipSilenceEnabled(boolean)}
* instead.
*/
@SuppressWarnings("deprecation")
@Deprecated
void setPlaybackParameters(PlaybackParameters playbackParameters);
/** @deprecated Use {@link #getPlaybackSpeed()} and {@link #getSkipSilenceEnabled()} instead. */
@SuppressWarnings("deprecation")
@Deprecated
PlaybackParameters getPlaybackParameters();
/** Sets the playback speed. */ /** Sets the playback speed. */
void setPlaybackSpeed(float playbackSpeed); void setPlaybackSpeed(float playbackSpeed);
......
...@@ -318,7 +318,7 @@ import java.lang.reflect.Method; ...@@ -318,7 +318,7 @@ import java.lang.reflect.Method;
boolean hadData = hasData; boolean hadData = hasData;
hasData = hasPendingData(writtenFrames); hasData = hasPendingData(writtenFrames);
if (hadData && !hasData && playState != PLAYSTATE_STOPPED && listener != null) { if (hadData && !hasData && playState != PLAYSTATE_STOPPED) {
listener.onUnderrun(bufferSize, C.usToMs(bufferSizeUs)); listener.onUnderrun(bufferSize, C.usToMs(bufferSizeUs));
} }
......
...@@ -31,7 +31,6 @@ import androidx.annotation.Nullable; ...@@ -31,7 +31,6 @@ import androidx.annotation.Nullable;
import androidx.annotation.RequiresApi; import androidx.annotation.RequiresApi;
import com.google.android.exoplayer2.C; import com.google.android.exoplayer2.C;
import com.google.android.exoplayer2.Format; import com.google.android.exoplayer2.Format;
import com.google.android.exoplayer2.PlaybackParameters;
import com.google.android.exoplayer2.audio.AudioProcessor.UnhandledAudioFormatException; import com.google.android.exoplayer2.audio.AudioProcessor.UnhandledAudioFormatException;
import com.google.android.exoplayer2.util.Assertions; import com.google.android.exoplayer2.util.Assertions;
import com.google.android.exoplayer2.util.Log; import com.google.android.exoplayer2.util.Log;
...@@ -92,14 +91,6 @@ public final class DefaultAudioSink implements AudioSink { ...@@ -92,14 +91,6 @@ public final class DefaultAudioSink implements AudioSink {
AudioProcessor[] getAudioProcessors(); AudioProcessor[] getAudioProcessors();
/** /**
* @deprecated Use {@link #applyPlaybackSpeed(float)} and {@link
* #applySkipSilenceEnabled(boolean)} instead.
*/
@SuppressWarnings("deprecation")
@Deprecated
PlaybackParameters applyPlaybackParameters(PlaybackParameters playbackParameters);
/**
* Configures audio processors to apply the specified playback speed immediately, returning the * Configures audio processors to apply the specified playback speed immediately, returning the
* new playback speed, which may differ from the speed passed in. Only called when processors * new playback speed, which may differ from the speed passed in. Only called when processors
* have no input pending. * have no input pending.
...@@ -177,17 +168,6 @@ public final class DefaultAudioSink implements AudioSink { ...@@ -177,17 +168,6 @@ public final class DefaultAudioSink implements AudioSink {
return audioProcessors; return audioProcessors;
} }
/**
* @deprecated Use {@link #applyPlaybackSpeed(float)} and {@link
* #applySkipSilenceEnabled(boolean)} instead.
*/
@SuppressWarnings("deprecation")
@Deprecated
@Override
public PlaybackParameters applyPlaybackParameters(PlaybackParameters playbackParameters) {
return new PlaybackParameters(applyPlaybackSpeed(playbackParameters.speed));
}
@Override @Override
public float applyPlaybackSpeed(float playbackSpeed) { public float applyPlaybackSpeed(float playbackSpeed) {
return sonicAudioProcessor.setSpeed(playbackSpeed); return sonicAudioProcessor.setSpeed(playbackSpeed);
...@@ -259,7 +239,7 @@ public final class DefaultAudioSink implements AudioSink { ...@@ -259,7 +239,7 @@ public final class DefaultAudioSink implements AudioSink {
@SuppressLint("InlinedApi") @SuppressLint("InlinedApi")
private static final int WRITE_NON_BLOCKING = AudioTrack.WRITE_NON_BLOCKING; private static final int WRITE_NON_BLOCKING = AudioTrack.WRITE_NON_BLOCKING;
/** The default playback speed. */ /** The default playback speed. */
private static final float DEFAULT_PLAYBACK_SPEED = 1.0f; private static final float DEFAULT_PLAYBACK_SPEED = 1f;
/** The default skip silence flag. */ /** The default skip silence flag. */
private static final boolean DEFAULT_SKIP_SILENCE = false; private static final boolean DEFAULT_SKIP_SILENCE = false;
...@@ -424,7 +404,7 @@ public final class DefaultAudioSink implements AudioSink { ...@@ -424,7 +404,7 @@ public final class DefaultAudioSink implements AudioSink {
Collections.addAll(toIntPcmAudioProcessors, audioProcessorChain.getAudioProcessors()); Collections.addAll(toIntPcmAudioProcessors, audioProcessorChain.getAudioProcessors());
toIntPcmAvailableAudioProcessors = toIntPcmAudioProcessors.toArray(new AudioProcessor[0]); toIntPcmAvailableAudioProcessors = toIntPcmAudioProcessors.toArray(new AudioProcessor[0]);
toFloatPcmAvailableAudioProcessors = new AudioProcessor[] {new FloatResamplingAudioProcessor()}; toFloatPcmAvailableAudioProcessors = new AudioProcessor[] {new FloatResamplingAudioProcessor()};
volume = 1.0f; volume = 1f;
audioAttributes = AudioAttributes.DEFAULT; audioAttributes = AudioAttributes.DEFAULT;
audioSessionId = C.AUDIO_SESSION_ID_UNSET; audioSessionId = C.AUDIO_SESSION_ID_UNSET;
auxEffectInfo = new AuxEffectInfo(AuxEffectInfo.NO_AUX_EFFECT_ID, 0f); auxEffectInfo = new AuxEffectInfo(AuxEffectInfo.NO_AUX_EFFECT_ID, 0f);
...@@ -1004,26 +984,6 @@ public final class DefaultAudioSink implements AudioSink { ...@@ -1004,26 +984,6 @@ public final class DefaultAudioSink implements AudioSink {
return isInitialized() && audioTrackPositionTracker.hasPendingData(getWrittenFrames()); return isInitialized() && audioTrackPositionTracker.hasPendingData(getWrittenFrames());
} }
/**
* @deprecated Use {@link #setPlaybackSpeed(float)} and {@link #setSkipSilenceEnabled(boolean)}
* instead.
*/
@SuppressWarnings("deprecation")
@Deprecated
@Override
public void setPlaybackParameters(PlaybackParameters playbackParameters) {
setPlaybackSpeedAndSkipSilence(playbackParameters.speed, getSkipSilenceEnabled());
}
/** @deprecated Use {@link #getPlaybackSpeed()} and {@link #getSkipSilenceEnabled()} instead. */
@SuppressWarnings("deprecation")
@Deprecated
@Override
public PlaybackParameters getPlaybackParameters() {
MediaPositionParameters mediaPositionParameters = getMediaPositionParameters();
return new PlaybackParameters(mediaPositionParameters.playbackSpeed);
}
@Override @Override
public void setPlaybackSpeed(float playbackSpeed) { public void setPlaybackSpeed(float playbackSpeed) {
setPlaybackSpeedAndSkipSilence(playbackSpeed, getSkipSilenceEnabled()); setPlaybackSpeedAndSkipSilence(playbackSpeed, getSkipSilenceEnabled());
...@@ -1435,6 +1395,10 @@ public final class DefaultAudioSink implements AudioSink { ...@@ -1435,6 +1395,10 @@ public final class DefaultAudioSink implements AudioSink {
return notGapless || isOffloadedGaplessPlaybackSupported(); return notGapless || isOffloadedGaplessPlaybackSupported();
} }
private static boolean isOffloadedPlayback(AudioTrack audioTrack) {
return Util.SDK_INT >= 29 && audioTrack.isOffloadedPlayback();
}
/** /**
* Returns whether the device supports gapless in offload playback. * Returns whether the device supports gapless in offload playback.
* *
...@@ -1446,10 +1410,6 @@ public final class DefaultAudioSink implements AudioSink { ...@@ -1446,10 +1410,6 @@ public final class DefaultAudioSink implements AudioSink {
return Util.SDK_INT >= 30 && Util.MODEL.startsWith("Pixel"); return Util.SDK_INT >= 30 && Util.MODEL.startsWith("Pixel");
} }
private static boolean isOffloadedPlayback(AudioTrack audioTrack) {
return Util.SDK_INT >= 29 && audioTrack.isOffloadedPlayback();
}
private static AudioTrack initializeKeepSessionIdAudioTrack(int audioSessionId) { private static AudioTrack initializeKeepSessionIdAudioTrack(int audioSessionId) {
int sampleRate = 4000; // Equal to private AudioTrack.MIN_SAMPLE_RATE. int sampleRate = 4000; // Equal to private AudioTrack.MIN_SAMPLE_RATE.
int channelConfig = AudioFormat.CHANNEL_OUT_MONO; int channelConfig = AudioFormat.CHANNEL_OUT_MONO;
...@@ -1498,6 +1458,7 @@ public final class DefaultAudioSink implements AudioSink { ...@@ -1498,6 +1458,7 @@ public final class DefaultAudioSink implements AudioSink {
case C.ENCODING_PCM_32BIT: case C.ENCODING_PCM_32BIT:
case C.ENCODING_PCM_8BIT: case C.ENCODING_PCM_8BIT:
case C.ENCODING_PCM_FLOAT: case C.ENCODING_PCM_FLOAT:
case C.ENCODING_AAC_ER_BSAC:
case C.ENCODING_INVALID: case C.ENCODING_INVALID:
case Format.NO_VALUE: case Format.NO_VALUE:
default: default:
...@@ -1544,6 +1505,7 @@ public final class DefaultAudioSink implements AudioSink { ...@@ -1544,6 +1505,7 @@ public final class DefaultAudioSink implements AudioSink {
case C.ENCODING_PCM_32BIT: case C.ENCODING_PCM_32BIT:
case C.ENCODING_PCM_8BIT: case C.ENCODING_PCM_8BIT:
case C.ENCODING_PCM_FLOAT: case C.ENCODING_PCM_FLOAT:
case C.ENCODING_AAC_ER_BSAC:
case C.ENCODING_INVALID: case C.ENCODING_INVALID:
case Format.NO_VALUE: case Format.NO_VALUE:
default: default:
......
...@@ -17,7 +17,6 @@ package com.google.android.exoplayer2.audio; ...@@ -17,7 +17,6 @@ package com.google.android.exoplayer2.audio;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import com.google.android.exoplayer2.Format; import com.google.android.exoplayer2.Format;
import com.google.android.exoplayer2.PlaybackParameters;
import java.nio.ByteBuffer; import java.nio.ByteBuffer;
/** An overridable {@link AudioSink} implementation forwarding all methods to another sink. */ /** An overridable {@link AudioSink} implementation forwarding all methods to another sink. */
...@@ -88,25 +87,6 @@ public class ForwardingAudioSink implements AudioSink { ...@@ -88,25 +87,6 @@ public class ForwardingAudioSink implements AudioSink {
return sink.hasPendingData(); return sink.hasPendingData();
} }
/**
* @deprecated Use {@link #setPlaybackSpeed(float)} and {@link #setSkipSilenceEnabled(boolean)}
* instead.
*/
@SuppressWarnings("deprecation")
@Deprecated
@Override
public void setPlaybackParameters(PlaybackParameters playbackParameters) {
sink.setPlaybackParameters(playbackParameters);
}
/** @deprecated Use {@link #getPlaybackSpeed()} and {@link #getSkipSilenceEnabled()} instead. */
@SuppressWarnings("deprecation")
@Deprecated
@Override
public PlaybackParameters getPlaybackParameters() {
return sink.getPlaybackParameters();
}
@Override @Override
public void setPlaybackSpeed(float playbackSpeed) { public void setPlaybackSpeed(float playbackSpeed) {
sink.setPlaybackSpeed(playbackSpeed); sink.setPlaybackSpeed(playbackSpeed);
......
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