Interface TsPayloadReader
-
- All Known Implementing Classes:
PesReader
,SectionReader
public interface TsPayloadReader
Parses TS packet payload data.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface 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 ofTsPayloadReader
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 initializingTsPayloadReader
s'TrackOutput
s.
-
Field Summary
Fields Modifier and Type Field 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.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
consume(ParsableByteArray data, @com.google.android.exoplayer2.extractor.ts.TsPayloadReader.Flags 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.
-
-
-
Field Detail
-
FLAG_PAYLOAD_UNIT_START_INDICATOR
static final int FLAG_PAYLOAD_UNIT_START_INDICATOR
Indicates the presence of the payload_unit_start_indicator in the TS packet header.- See Also:
- Constant Field Values
-
FLAG_RANDOM_ACCESS_INDICATOR
static final int FLAG_RANDOM_ACCESS_INDICATOR
Indicates the presence of the random_access_indicator in the TS packet header adaptation field.- See Also:
- Constant Field Values
-
FLAG_DATA_ALIGNMENT_INDICATOR
static final int FLAG_DATA_ALIGNMENT_INDICATOR
Indicates the presence of the data_alignment_indicator in the PES header.- See Also:
- Constant Field Values
-
-
Method Detail
-
init
void init(TimestampAdjuster timestampAdjuster, ExtractorOutput extractorOutput, TsPayloadReader.TrackIdGenerator idGenerator)
Initializes the payload reader.- Parameters:
timestampAdjuster
- A timestamp adjuster for offsetting and scaling sample timestamps.extractorOutput
- TheExtractorOutput
that receives the extracted data.idGenerator
- ATsPayloadReader.TrackIdGenerator
that generates unique track ids for theTrackOutput
s.
-
seek
void seek()
Notifies the reader that a seek has occurred.Following a call to this method, the data passed to the next invocation of
consume(com.google.android.exoplayer2.util.ParsableByteArray, @com.google.android.exoplayer2.extractor.ts.TsPayloadReader.Flags int)
will not be a continuation of the data that was previously passed. Hence the reader should reset any internal state.
-
consume
void consume(ParsableByteArray data, @com.google.android.exoplayer2.extractor.ts.TsPayloadReader.Flags int flags) throws ParserException
Consumes the payload of a TS packet.- Parameters:
data
- The TS packet. The position will be set to the start of the payload.flags
- SeeTsPayloadReader.Flags
.- Throws:
ParserException
- If the payload could not be parsed.
-
-