From acef34a6f3dab60eea8b837f29d118315f57ce5e Mon Sep 17 00:00:00 2001 From: andrewlewis Date: Tue, 12 Jul 2016 07:19:28 -0700 Subject: [PATCH] Set the output buffer position/limit only if it's non-null. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=127196797 --- .../com/google/android/exoplayer2/MediaCodecRenderer.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/library/src/main/java/com/google/android/exoplayer2/MediaCodecRenderer.java b/library/src/main/java/com/google/android/exoplayer2/MediaCodecRenderer.java index af3a258226..5e9bfe67c8 100644 --- a/library/src/main/java/com/google/android/exoplayer2/MediaCodecRenderer.java +++ b/library/src/main/java/com/google/android/exoplayer2/MediaCodecRenderer.java @@ -822,8 +822,10 @@ public abstract class MediaCodecRenderer extends Renderer { // The dequeued buffer is a media buffer. Do some initial setup. The buffer will be // processed by calling processOutputBuffer (possibly multiple times) below. ByteBuffer outputBuffer = outputBuffers[outputIndex]; - outputBuffer.position(outputBufferInfo.offset); - outputBuffer.limit(outputBufferInfo.offset + outputBufferInfo.size); + if (outputBuffer != null) { + outputBuffer.position(outputBufferInfo.offset); + outputBuffer.limit(outputBufferInfo.offset + outputBufferInfo.size); + } shouldSkipOutputBuffer = shouldSkipOutputBuffer(outputBufferInfo.presentationTimeUs); } } else if (outputIndex == MediaCodec.INFO_OUTPUT_FORMAT_CHANGED /* (-2) */) {