diff --git a/libraries/transformer/src/main/java/androidx/media3/transformer/AudioGraphInput.java b/libraries/transformer/src/main/java/androidx/media3/transformer/AudioGraphInput.java index 6e2442b3a1..5250d39d8d 100644 --- a/libraries/transformer/src/main/java/androidx/media3/transformer/AudioGraphInput.java +++ b/libraries/transformer/src/main/java/androidx/media3/transformer/AudioGraphInput.java @@ -235,12 +235,16 @@ import java.util.concurrent.atomic.AtomicReference; // queueing it. clearAndAddToAvailableBuffers(availableInputBuffers.remove()); } + if (currentInputBufferBeingOutput != null) { + clearAndAddToAvailableBuffers(currentInputBufferBeingOutput); + currentInputBufferBeingOutput = null; + } while (!pendingInputBuffers.isEmpty()) { clearAndAddToAvailableBuffers(pendingInputBuffers.remove()); } + checkState(availableInputBuffers.size() == MAX_INPUT_BUFFER_COUNT); silentAudioGenerator.flush(); audioProcessingPipeline.flush(); - currentInputBufferBeingOutput = null; receivedEndOfStreamFromInput = false; queueEndOfStreamAfterSilence = false; startTimeUs = C.TIME_UNSET;