Buggy code:
private static final int ID_SIMPLE_BLOCK = 163 ; private static final int ID_BLOCK_GROUP = 160 ; private static final int ID_BLOCK = 161 ; private static final int ID_REFERENCE_BLOCK = 251 ; private static final int ID_TRACKS = 374648427 ; private static final int ID_TRACK_ENTRY = 174 ; private static final int ID_TRACK_NUMBER = 215 ; private static final int ID_TRACK_TYPE = 131 ; private static final int ID_DEFAULT_DURATION = 2352003 ; private static final int ID_CODEC_ID = 134 ; private static final int ID_CODEC_PRIVATE = 25506 ; private static final int ID_CODEC_DELAY = 22186 ; private static final int ID_SEEK_PRE_ROLL = 22203 ; private static final int ID_VIDEO = 224 ; private static final int ID_PIXEL_WIDTH = 176 ; private static final int ID_PIXEL_HEIGHT = 186 ; private static final int ID_AUDIO = 225 ; private static final int ID_CHANNELS = 159 ; private static final int ID_SAMPLING_FREQUENCY = 181 ; private static final int ID_CONTENT_ENCODINGS = 28032 ; private static final int ID_CONTENT_ENCODING = 25152 ; private static final int ID_CONTENT_ENCODING_ORDER = 20529 ; private static final int ID_CONTENT_ENCODING_SCOPE = 20530 ; private static final int ID_CONTENT_ENCODING_TYPE = 20531 ; private static final int ID_CONTENT_ENCRYPTION = 20533 ; private static final int ID_CONTENT_ENCRYPTION_ALGORITHM = 18401 ; private static final int ID_CONTENT_ENCRYPTION_KEY_ID = 18402 ; private static final int ID_CONTENT_ENCRYPTION_AES_SETTINGS = 18407 ; private static final int ID_CONTENT_ENCRYPTION_AES_SETTINGS_CIPHER_MODE = 18408 ; private static final int ID_CUES = 475249515 ; private static final int ID_CUE_POINT = 187 ; private static final int ID_CUE_TIME = 179 ; private static final int ID_CUE_TRACK_POSITIONS = 183 ; private static final int ID_CUE_CLUSTER_POSITION = 241 ; private static final int LACING_NONE = 0 ; private static final int LACING_XIPH = 1 ; private static final int LACING_FIXED_SIZE = 2 ; private static final int LACING_EBML = 3 ; private final EbmlReader reader ; private final VarintReader varintReader ; private final ParsableByteArray nalStartCode ; private final ParsableByteArray nalLength ; private final ParsableByteArray scratch ; private final ParsableByteArray vorbisNumPageSamples ; private final ParsableByteArray seekEntryIdBytes ; private long segmentContentPosition = WebmExtractor . UNKNOWN ; private long segmentContentSize = WebmExtractor . UNKNOWN ; private long timecodeScale = 1000000L ; private long durationUs = C . UNKNOWN_TIME_US ; private WebmExtractor . TrackFormat trackFormat ; private WebmExtractor . TrackFormat audioTrackFormat ; private WebmExtractor . TrackFormat videoTrackFormat ; private boolean sentDrmInitData ; private int seekEntryId ; private long seekEntryPosition ; private boolean seekForCues ; private long cuesContentPosition = WebmExtractor . UNKNOWN ; private long seekPositionAfterBuildingCues = WebmExtractor . UNKNOWN ; private int cuesState = WebmExtractor . CUES_STATE_NOT_BUILT ; private long clusterTimecodeUs = WebmExtractor . UNKNOWN ; private LongArray cueTimesUs ; private LongArray cueClusterPositions ; private boolean seenClusterPositionForCurrentCuePoint ; private int blockState ; private long blockTimeUs ; private int blockLacingSampleIndex ; private int blockLacingSampleCount ; private int [ ] blockLacingSampleSizes ; private int blockTrackNumber ; private int blockTrackNumberLength ; private int blockFlags ; private byte [ ] blockEncryptionKeyId ; private int sampleBytesRead ; private boolean sampleEncryptionDataRead ; private int sampleCurrentNalBytesRemaining ; private int sampleBytesWritten ; private boolean sampleRead ; private boolean sampleSeenReferenceBlock ; private ExtractorOutput extractorOutput ; public WebmExtractor ( ) { } WebmExtractor ( EbmlReader reader ) { } @ Override public void init ( ExtractorOutput output ) { } @ Override public void seek ( ) { } @ Override public int read ( ExtractorInput input , PositionHolder seekPosition ) throws IOException , InterruptedException { } int getElementType ( int id ) { } void startMasterElement ( int id , long contentPosition , long contentSize ) throws ParserException { switch ( id ) { case WebmExtractor . ID_SEGMENT : <START_BUG> if ( ( segmentContentPosition ) != ( WebmExtractor . UNKNOWN ) ) { <END_BUG> throw new ParserException ( "Multiple<seq2seq4repair_space>Segment<seq2seq4repair_space>elements<seq2seq4repair_space>not<seq2seq4repair_space>supported" ) ; } segmentContentPosition = contentPosition ; segmentContentSize = contentSize ; return ; case WebmExtractor . ID_SEEK : seekEntryId = WebmExtractor . UNKNOWN ; seekEntryPosition = WebmExtractor . UNKNOWN ; return ; case WebmExtractor . ID_CUES : cueTimesUs = new LongArray ( ) ; cueClusterPositions = new LongArray ( ) ; return ; case WebmExtractor . ID_CUE_POINT : seenClusterPositionForCurrentCuePoint = false ; return ; case WebmExtractor . ID_CLUSTER : if ( ( ( cuesState ) == ( WebmExtractor . CUES_STATE_NOT_BUILT ) ) && ( ( cuesContentPosition ) != ( WebmExtractor . UNKNOWN ) ) ) { seekForCues = true ; } return ; case WebmExtractor . ID_BLOCK_GROUP : sampleSeenReferenceBlock = false ; return ; case WebmExtractor . ID_CONTENT_ENCODING : return ; case WebmExtractor . ID_CONTENT_ENCRYPTION : trackFormat . hasContentEncryption = true ; return ; case WebmExtractor . ID_TRACK_ENTRY : trackFormat = new WebmExtractor . TrackFormat ( ) ; return ; default : return ; } } void endMasterElement ( int id ) throws ParserException { } void integerElement ( int id , long value ) throws ParserException { } void floatElement ( int id , double value ) { } void stringElement ( int id , String value ) throws ParserException { } void binaryElement ( int id , int contentSize , ExtractorInput input ) throws IOException , InterruptedException { } private void outputSampleMetadata ( TrackOutput trackOutput , long timeUs ) { } private void readScratch ( ExtractorInput input , int requiredLength ) throws IOException , InterruptedException { } private void writeSampleData ( ExtractorInput input , TrackOutput output , WebmExtractor . TrackFormat format , int size ) throws IOException , InterruptedException { } private ChunkIndex buildCues ( ) throws ParserException { } private boolean maybeSeekForCues ( PositionHolder seekPosition , long currentPosition ) { } private long scaleTimecodeToUs ( long unscaledTimecode ) { } private static boolean isCodecSupported ( String codecId ) { } private static int [ ] ensureArrayCapacity ( int [ ] array , int length ) { } private final class InnerEbmlReaderOutput implements EbmlReaderOutput { @ Override public int getElementType ( int id ) { } @ Override public void startMasterElement ( int id , long contentPosition , long contentSize ) throws ParserException { WebmExtractor . this . startMasterElement ( id , contentPosition , contentSize ) ; }

Fix:
if ( ( ( segmentContentPosition ) != ( WebmExtractor . UNKNOWN ) ) && ( ( segmentContentPosition ) != contentPosition ) ) {