Search in sources :

Example 11 with SampleNumberHolder

use of com.google.android.exoplayer2.extractor.FlacFrameReader.SampleNumberHolder in project ExoPlayer by google.

the class FlacFrameReaderTest method checkAndReadFrameHeader_validData_writesSampleNumber.

@Test
public void checkAndReadFrameHeader_validData_writesSampleNumber() throws Exception {
    FlacStreamMetadataHolder streamMetadataHolder = new FlacStreamMetadataHolder(/* flacStreamMetadata= */
    null);
    ExtractorInput input = buildExtractorInputReadingFromFirstFrame("media/flac/bear_one_metadata_block.flac", streamMetadataHolder);
    int frameStartMarker = FlacMetadataReader.getFrameStartMarker(input);
    // Skip first frame.
    input.skip(5030);
    ParsableByteArray scratch = new ParsableByteArray(FlacConstants.MAX_FRAME_HEADER_SIZE);
    input.read(scratch.getData(), 0, FlacConstants.MAX_FRAME_HEADER_SIZE);
    SampleNumberHolder sampleNumberHolder = new SampleNumberHolder();
    FlacFrameReader.checkAndReadFrameHeader(scratch, streamMetadataHolder.flacStreamMetadata, frameStartMarker, sampleNumberHolder);
    assertThat(sampleNumberHolder.sampleNumber).isEqualTo(4096);
}
Also used : ParsableByteArray(com.google.android.exoplayer2.util.ParsableByteArray) FlacStreamMetadataHolder(com.google.android.exoplayer2.extractor.FlacMetadataReader.FlacStreamMetadataHolder) SampleNumberHolder(com.google.android.exoplayer2.extractor.FlacFrameReader.SampleNumberHolder) FakeExtractorInput(com.google.android.exoplayer2.testutil.FakeExtractorInput) Test(org.junit.Test)

Aggregations

SampleNumberHolder (com.google.android.exoplayer2.extractor.FlacFrameReader.SampleNumberHolder)9 FlacStreamMetadataHolder (com.google.android.exoplayer2.extractor.FlacMetadataReader.FlacStreamMetadataHolder)9 FakeExtractorInput (com.google.android.exoplayer2.testutil.FakeExtractorInput)9 Test (org.junit.Test)9 ParsableByteArray (com.google.android.exoplayer2.util.ParsableByteArray)6