Merge "Update ExoPlayer version" into rvc-dev am: 3f3b615706

Change-Id: Id4b338652e0cf41aa5a9c15521811a14ee92d767
This commit is contained in:
Santiago Seifert
2020-04-15 17:22:36 +00:00
committed by Automerger Merge Worker

View File

@@ -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;
} }