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/VideoSamplePipeline.java index 8596ca3d2e..fb2d83a909 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/VideoSamplePipeline.java @@ -102,22 +102,24 @@ import java.io.IOException; return false; } - if (!frameEditor.hasInputData()) { - if (!waitingForPopulatedDecoderSurface) { - if (decoder.getOutputBufferInfo() != null) { - decoder.releaseOutputBuffer(/* render= */ true); - waitingForPopulatedDecoderSurface = true; - } - if (decoder.isEnded()) { - encoder.signalEndOfInputStream(); - } - } + if (frameEditor.hasInputData()) { + waitingForPopulatedDecoderSurface = false; + frameEditor.processData(); + return true; + } + + if (waitingForPopulatedDecoderSurface) { return false; } - waitingForPopulatedDecoderSurface = false; - frameEditor.processData(); - return true; + if (decoder.getOutputBufferInfo() != null) { + decoder.releaseOutputBuffer(/* render= */ true); + waitingForPopulatedDecoderSurface = true; + } + if (decoder.isEnded()) { + encoder.signalEndOfInputStream(); + } + return false; } @Override