package androidx.media3.exoplayer.source.chunk;

import androidx.media3.common.Format;
import androidx.media3.common.util.UnstableApi;
import androidx.media3.exoplayer.analytics.PlayerId;
import androidx.media3.extractor.ChunkIndex;
import androidx.media3.extractor.ExtractorInput;
import androidx.media3.extractor.TrackOutput;
import androidx.media3.extractor.text.SubtitleParser;
import defpackage.hs0;
import defpackage.rq6;
import java.io.IOException;
import java.util.List;

/* JADX INFO: loaded from: classes.dex */
@UnstableApi
public interface ChunkExtractor {

    public interface Factory {
        @rq6
        ChunkExtractor createProgressiveMediaExtractor(int i, Format format, boolean z, List<Format> list, @rq6 TrackOutput trackOutput, PlayerId playerId);

        @hs0
        default Factory experimentalParseSubtitlesDuringExtraction(boolean z) {
            return this;
        }

        @hs0
        default Factory experimentalSetCodecsToParseWithinGopSampleDependencies(int i) {
            return this;
        }

        default Format getOutputTextFormat(Format format) {
            return format;
        }

        @hs0
        default Factory setSubtitleParserFactory(SubtitleParser.Factory factory) {
            return this;
        }
    }

    public interface TrackOutputProvider {
        TrackOutput track(int i, int i2);
    }

    @rq6
    ChunkIndex getChunkIndex();

    @rq6
    Format[] getSampleFormats();

    void init(@rq6 TrackOutputProvider trackOutputProvider, long j, long j2);

    boolean read(ExtractorInput extractorInput) throws IOException;

    void release();
}
