diff --git a/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/AudioSamplePipeline.java b/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/AudioTranscodingSamplePipeline.java similarity index 93% rename from library/transformer/src/main/java/com/google/android/exoplayer2/transformer/AudioSamplePipeline.java rename to library/transformer/src/main/java/com/google/android/exoplayer2/transformer/AudioTranscodingSamplePipeline.java index f42ec06340..60d5be779c 100644 --- a/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/AudioSamplePipeline.java +++ b/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/AudioTranscodingSamplePipeline.java @@ -18,7 +18,6 @@ package com.google.android.exoplayer2.transformer; import static com.google.android.exoplayer2.util.Assertions.checkNotNull; import static com.google.android.exoplayer2.util.Assertions.checkState; -import static com.google.android.exoplayer2.util.Assertions.checkStateNotNull; import static java.lang.Math.min; import android.media.MediaCodec.BufferInfo; @@ -37,9 +36,8 @@ import org.checkerframework.dataflow.qual.Pure; /** * Pipeline to decode audio samples, apply transformations on the raw samples, and re-encode them. */ -/* package */ final class AudioSamplePipeline implements SamplePipeline { +/* package */ final class AudioTranscodingSamplePipeline implements SamplePipeline { - private static final String TAG = "AudioSamplePipeline"; private static final int DEFAULT_ENCODER_BITRATE = 128 * 1024; private final Codec decoder; @@ -61,7 +59,7 @@ import org.checkerframework.dataflow.qual.Pure; private boolean drainingSonicForSpeedChange; private float currentSpeed; - public AudioSamplePipeline( + public AudioTranscodingSamplePipeline( Format inputFormat, TransformationRequest transformationRequest, Codec.DecoderFactory decoderFactory, @@ -142,40 +140,36 @@ import org.checkerframework.dataflow.qual.Pure; @Override @Nullable public Format getOutputFormat() throws TransformationException { - return encoder != null ? encoder.getOutputFormat() : null; + return encoder.getOutputFormat(); } @Override @Nullable public DecoderInputBuffer getOutputBuffer() throws TransformationException { - if (encoder != null) { - encoderOutputBuffer.data = encoder.getOutputBuffer(); - if (encoderOutputBuffer.data != null) { - encoderOutputBuffer.timeUs = checkNotNull(encoder.getOutputBufferInfo()).presentationTimeUs; - encoderOutputBuffer.setFlags(C.BUFFER_FLAG_KEY_FRAME); - return encoderOutputBuffer; - } + encoderOutputBuffer.data = encoder.getOutputBuffer(); + if (encoderOutputBuffer.data == null) { + return null; } - return null; + encoderOutputBuffer.timeUs = checkNotNull(encoder.getOutputBufferInfo()).presentationTimeUs; + encoderOutputBuffer.setFlags(C.BUFFER_FLAG_KEY_FRAME); + return encoderOutputBuffer; } @Override public void releaseOutputBuffer() throws TransformationException { - checkStateNotNull(encoder).releaseOutputBuffer(); + encoder.releaseOutputBuffer(); } @Override public boolean isEnded() { - return encoder != null && encoder.isEnded(); + return encoder.isEnded(); } @Override public void release() { sonicAudioProcessor.reset(); decoder.release(); - if (encoder != null) { - encoder.release(); - } + encoder.release(); } /** diff --git a/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/Transformer.java b/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/Transformer.java index f312d84643..20caac1ea8 100644 --- a/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/Transformer.java +++ b/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/Transformer.java @@ -917,7 +917,7 @@ public final class Transformer { @Override public void onPlayerError(PlaybackException error) { - Throwable cause = error.getCause(); + @Nullable Throwable cause = error.getCause(); handleTransformationEnded( cause instanceof TransformationException ? (TransformationException) cause diff --git a/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/TransformerAudioRenderer.java b/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/TransformerAudioRenderer.java index 73701f6589..f5fb4a7971 100644 --- a/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/TransformerAudioRenderer.java +++ b/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/TransformerAudioRenderer.java @@ -73,7 +73,7 @@ import com.google.android.exoplayer2.source.SampleStream.ReadDataResult; new PassthroughSamplePipeline(inputFormat, transformationRequest, fallbackListener); } else { samplePipeline = - new AudioSamplePipeline( + new AudioTranscodingSamplePipeline( inputFormat, transformationRequest, decoderFactory, diff --git a/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/TransformerVideoRenderer.java b/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/TransformerVideoRenderer.java index 7c12f87bd5..062fecb0ab 100644 --- a/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/TransformerVideoRenderer.java +++ b/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/TransformerVideoRenderer.java @@ -82,7 +82,7 @@ import org.checkerframework.checker.nullness.qual.RequiresNonNull; new PassthroughSamplePipeline(inputFormat, transformationRequest, fallbackListener); } else { samplePipeline = - new VideoSamplePipeline( + new VideoTranscodingSamplePipeline( context, inputFormat, transformationRequest, diff --git a/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/VideoSamplePipeline.java b/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/VideoTranscodingSamplePipeline.java similarity index 98% rename from library/transformer/src/main/java/com/google/android/exoplayer2/transformer/VideoSamplePipeline.java rename to library/transformer/src/main/java/com/google/android/exoplayer2/transformer/VideoTranscodingSamplePipeline.java index 7fd12dfa10..32bbca3e43 100644 --- a/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/VideoSamplePipeline.java +++ b/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/VideoTranscodingSamplePipeline.java @@ -36,9 +36,7 @@ import org.checkerframework.dataflow.qual.Pure; /** * Pipeline to decode video samples, apply transformations on the raw samples, and re-encode them. */ -/* package */ final class VideoSamplePipeline implements SamplePipeline { - - private static final String TAG = "VideoSamplePipeline"; +/* package */ final class VideoTranscodingSamplePipeline implements SamplePipeline { private final int outputRotationDegrees; private final DecoderInputBuffer decoderInputBuffer; @@ -51,7 +49,7 @@ import org.checkerframework.dataflow.qual.Pure; private boolean waitingForFrameEditorInput; - public VideoSamplePipeline( + public VideoTranscodingSamplePipeline( Context context, Format inputFormat, TransformationRequest transformationRequest, @@ -233,7 +231,7 @@ import org.checkerframework.dataflow.qual.Pure; @Override @Nullable public Format getOutputFormat() throws TransformationException { - Format format = encoder.getOutputFormat(); + @Nullable Format format = encoder.getOutputFormat(); return format == null ? null : format.buildUpon().setRotationDegrees(outputRotationDegrees).build();