diff --git a/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/video/MediaCodecVideoRenderer.java b/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/video/MediaCodecVideoRenderer.java index 85def948c5..d54ed55460 100644 --- a/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/video/MediaCodecVideoRenderer.java +++ b/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/video/MediaCodecVideoRenderer.java @@ -1178,9 +1178,7 @@ public class MediaCodecVideoRenderer extends MediaCodecRenderer { if (frameProcessorManager.isEnabled()) { notifyFrameMetaDataListener = false; if (!frameProcessorManager.maybeRegisterFrame(format, presentationTimeUs, isLastBuffer)) { - // TODO(b/238302341): Handle FrameProcessor is unable to accept the force rendered buffer. - // Treat the frame as dropped for now. - return true; + return false; } } else { notifyFrameMetaDataListener = true; @@ -1454,6 +1452,9 @@ public class MediaCodecVideoRenderer extends MediaCodecRenderer { droppedSourceBufferCount, /* droppedDecoderBufferCount= */ buffersInCodecCount); } flushOrReinitializeCodec(); + if (frameProcessorManager.isEnabled()) { + frameProcessorManager.flush(); + } return true; }