diff --git a/library/src/main/java/com/google/android/exoplayer/extractor/ts/AdtsExtractor.java b/library/src/main/java/com/google/android/exoplayer/extractor/ts/AdtsExtractor.java index f848d6214d..2bacf5d0c5 100644 --- a/library/src/main/java/com/google/android/exoplayer/extractor/ts/AdtsExtractor.java +++ b/library/src/main/java/com/google/android/exoplayer/extractor/ts/AdtsExtractor.java @@ -102,6 +102,10 @@ public final class AdtsExtractor implements Extractor { input.peekFully(scratch.data, 0, 4); scratchBits.setPosition(14); int frameSize = scratchBits.readBits(13); + // Either the stream is malformed OR we're not parsing an ADTS stream. + if (frameSize <= 6) { + return false; + } input.advancePeekPosition(frameSize - 6); validFramesSize += frameSize; }