Merge "Update ExoPlayer version" into rvc-dev am: 3f3b615706
Change-Id: Id4b338652e0cf41aa5a9c15521811a14ee92d767
This commit is contained in:
@@ -51,6 +51,7 @@ import com.google.android.exoplayer2.extractor.ts.DefaultTsPayloadReaderFactory;
|
|||||||
import com.google.android.exoplayer2.extractor.ts.PsExtractor;
|
import com.google.android.exoplayer2.extractor.ts.PsExtractor;
|
||||||
import com.google.android.exoplayer2.extractor.ts.TsExtractor;
|
import com.google.android.exoplayer2.extractor.ts.TsExtractor;
|
||||||
import com.google.android.exoplayer2.extractor.wav.WavExtractor;
|
import com.google.android.exoplayer2.extractor.wav.WavExtractor;
|
||||||
|
import com.google.android.exoplayer2.upstream.DataReader;
|
||||||
import com.google.android.exoplayer2.upstream.DataSource;
|
import com.google.android.exoplayer2.upstream.DataSource;
|
||||||
import com.google.android.exoplayer2.upstream.DataSpec;
|
import com.google.android.exoplayer2.upstream.DataSpec;
|
||||||
import com.google.android.exoplayer2.upstream.TransferListener;
|
import com.google.android.exoplayer2.upstream.TransferListener;
|
||||||
@@ -60,7 +61,6 @@ import com.google.android.exoplayer2.video.ColorInfo;
|
|||||||
|
|
||||||
import java.io.EOFException;
|
import java.io.EOFException;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.InterruptedIOException;
|
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
import java.nio.ByteBuffer;
|
import java.nio.ByteBuffer;
|
||||||
@@ -848,7 +848,7 @@ public final class MediaParser {
|
|||||||
private final String[] mParserNamesPool;
|
private final String[] mParserNamesPool;
|
||||||
private final PositionHolder mPositionHolder;
|
private final PositionHolder mPositionHolder;
|
||||||
private final InputReadingDataSource mDataSource;
|
private final InputReadingDataSource mDataSource;
|
||||||
private final ExtractorInputAdapter mScratchExtractorInputAdapter;
|
private final DataReaderAdapter mScratchDataReaderAdapter;
|
||||||
private final ParsableByteArrayAdapter mScratchParsableByteArrayAdapter;
|
private final ParsableByteArrayAdapter mScratchParsableByteArrayAdapter;
|
||||||
private String mExtractorName;
|
private String mExtractorName;
|
||||||
private Extractor mExtractor;
|
private Extractor mExtractor;
|
||||||
@@ -973,10 +973,6 @@ public final class MediaParser {
|
|||||||
}
|
}
|
||||||
} catch (EOFException e) {
|
} catch (EOFException e) {
|
||||||
// Do nothing.
|
// Do nothing.
|
||||||
} catch (InterruptedException e) {
|
|
||||||
// TODO: Remove this exception replacement once we update the ExoPlayer
|
|
||||||
// version.
|
|
||||||
throw new InterruptedIOException();
|
|
||||||
} finally {
|
} finally {
|
||||||
mExtractorInput.resetPeekPosition();
|
mExtractorInput.resetPeekPosition();
|
||||||
}
|
}
|
||||||
@@ -999,9 +995,6 @@ public final class MediaParser {
|
|||||||
result = mExtractor.read(mExtractorInput, mPositionHolder);
|
result = mExtractor.read(mExtractorInput, mPositionHolder);
|
||||||
} catch (ParserException e) {
|
} catch (ParserException e) {
|
||||||
throw new ParsingException(e);
|
throw new ParsingException(e);
|
||||||
} catch (InterruptedException e) {
|
|
||||||
// TODO: Remove this exception replacement once we update the ExoPlayer version.
|
|
||||||
throw new InterruptedIOException();
|
|
||||||
}
|
}
|
||||||
if (result == Extractor.RESULT_END_OF_INPUT) {
|
if (result == Extractor.RESULT_END_OF_INPUT) {
|
||||||
return false;
|
return false;
|
||||||
@@ -1055,7 +1048,7 @@ public final class MediaParser {
|
|||||||
mPositionHolder = new PositionHolder();
|
mPositionHolder = new PositionHolder();
|
||||||
mDataSource = new InputReadingDataSource();
|
mDataSource = new InputReadingDataSource();
|
||||||
removePendingSeek();
|
removePendingSeek();
|
||||||
mScratchExtractorInputAdapter = new ExtractorInputAdapter();
|
mScratchDataReaderAdapter = new DataReaderAdapter();
|
||||||
mScratchParsableByteArrayAdapter = new ParsableByteArrayAdapter();
|
mScratchParsableByteArrayAdapter = new ParsableByteArrayAdapter();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1270,12 +1263,12 @@ public final class MediaParser {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int sampleData(ExtractorInput input, int length, boolean allowEndOfInput)
|
public int sampleData(DataReader input, int length, boolean allowEndOfInput)
|
||||||
throws IOException {
|
throws IOException {
|
||||||
mScratchExtractorInputAdapter.setExtractorInput(input, length);
|
mScratchDataReaderAdapter.setDataReader(input, length);
|
||||||
long positionBeforeReading = mScratchExtractorInputAdapter.getPosition();
|
long positionBeforeReading = mScratchDataReaderAdapter.getPosition();
|
||||||
mOutputConsumer.onSampleDataFound(mTrackIndex, mScratchExtractorInputAdapter);
|
mOutputConsumer.onSampleDataFound(mTrackIndex, mScratchDataReaderAdapter);
|
||||||
return (int) (mScratchExtractorInputAdapter.getPosition() - positionBeforeReading);
|
return (int) (mScratchDataReaderAdapter.getPosition() - positionBeforeReading);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -1297,14 +1290,14 @@ public final class MediaParser {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private static final class ExtractorInputAdapter implements InputReader {
|
private static final class DataReaderAdapter implements InputReader {
|
||||||
|
|
||||||
private ExtractorInput mExtractorInput;
|
private DataReader mDataReader;
|
||||||
private int mCurrentPosition;
|
private int mCurrentPosition;
|
||||||
private long mLength;
|
private long mLength;
|
||||||
|
|
||||||
public void setExtractorInput(ExtractorInput extractorInput, long length) {
|
public void setDataReader(DataReader dataReader, long length) {
|
||||||
mExtractorInput = extractorInput;
|
mDataReader = dataReader;
|
||||||
mCurrentPosition = 0;
|
mCurrentPosition = 0;
|
||||||
mLength = length;
|
mLength = length;
|
||||||
}
|
}
|
||||||
@@ -1314,12 +1307,7 @@ public final class MediaParser {
|
|||||||
@Override
|
@Override
|
||||||
public int read(byte[] buffer, int offset, int readLength) throws IOException {
|
public int read(byte[] buffer, int offset, int readLength) throws IOException {
|
||||||
int readBytes = 0;
|
int readBytes = 0;
|
||||||
try {
|
readBytes = mDataReader.read(buffer, offset, readLength);
|
||||||
readBytes = mExtractorInput.read(buffer, offset, readLength);
|
|
||||||
} catch (InterruptedException e) {
|
|
||||||
// TODO: Remove this exception replacement once we update the ExoPlayer version.
|
|
||||||
throw new InterruptedIOException();
|
|
||||||
}
|
|
||||||
mCurrentPosition += readBytes;
|
mCurrentPosition += readBytes;
|
||||||
return readBytes;
|
return readBytes;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user