public interface TsPayloadReader
Modifier and Type | Interface and Description |
---|---|
static class |
TsPayloadReader.DvbSubtitleInfo
Holds information about a DVB subtitle, as defined in ETSI EN 300 468 V1.11.1 section 6.2.41.
|
static class |
TsPayloadReader.EsInfo
Holds information associated with a PMT entry.
|
static interface |
TsPayloadReader.Factory
Factory of
TsPayloadReader instances. |
static interface |
TsPayloadReader.Flags
Contextual flags indicating the presence of indicators in the TS packet or PES packet headers.
|
static class |
TsPayloadReader.TrackIdGenerator
Generates track ids for initializing
TsPayloadReader s' TrackOutput s. |
Modifier and Type | Field and Description |
---|---|
static int |
FLAG_DATA_ALIGNMENT_INDICATOR
Indicates the presence of the data_alignment_indicator in the PES header.
|
static int |
FLAG_PAYLOAD_UNIT_START_INDICATOR
Indicates the presence of the payload_unit_start_indicator in the TS packet header.
|
static int |
FLAG_RANDOM_ACCESS_INDICATOR
Indicates the presence of the random_access_indicator in the TS packet header adaptation field.
|
Modifier and Type | Method and Description |
---|---|
void |
consume(ParsableByteArray data,
int flags)
Consumes the payload of a TS packet.
|
void |
init(TimestampAdjuster timestampAdjuster,
ExtractorOutput extractorOutput,
TsPayloadReader.TrackIdGenerator idGenerator)
Initializes the payload reader.
|
void |
seek()
Notifies the reader that a seek has occurred.
|
static final int FLAG_PAYLOAD_UNIT_START_INDICATOR
static final int FLAG_RANDOM_ACCESS_INDICATOR
static final int FLAG_DATA_ALIGNMENT_INDICATOR
void init(TimestampAdjuster timestampAdjuster, ExtractorOutput extractorOutput, TsPayloadReader.TrackIdGenerator idGenerator)
timestampAdjuster
- A timestamp adjuster for offsetting and scaling sample timestamps.extractorOutput
- The ExtractorOutput
that receives the extracted data.idGenerator
- A PesReader.TrackIdGenerator
that generates unique track ids for the
TrackOutput
s.void seek()
Following a call to this method, the data passed to the next invocation of consume(com.google.android.exoplayer2.util.ParsableByteArray, int)
will not be a continuation of the data that was previously passed. Hence the reader should
reset any internal state.
void consume(ParsableByteArray data, @TsPayloadReader.Flags int flags) throws ParserException
data
- The TS packet. The position will be set to the start of the payload.flags
- See TsPayloadReader.Flags
.ParserException
- If the payload could not be parsed.