Expand description
Support for Packetised Elementary Stream syntax within Transport Stream packet payloads. Elementary streams are split into ‘elementary stream packets’, which are then further split into the payloads of transport stream packets.
The types here allow the elementary stream to be reconstructed by passing all the extracted pieces back to the calling application as they are encountered – these pieces are not reassembled, to avoid the cost of copying of the underlying data.
To receive Elementary Stream data, create an implementation of
ElementaryStreamConsumer, and register this with the
StreamConstructor object passed to the
Demultiplex instance.
Structs§
- EsRate
- Indication of an Elementary Stream’s data rate
- PesExtension
- TODO: not yet implemented
- PesHeader
- Header at the start of every PES packet.
- PesPacket
Filter - Implementation of
demultiplex::PacketFilterfor packets that contain PES data. - PesParsed
Contents - Extra data which may optionally be present in the
PesHeader, potentially including Presentation Timestamp (PTS) and Decode Timestamp (DTS) values. - Stream
Id - Values which may be returned by
PesHeader::stream_id()to identify the kind of content within the Packetized Elementary Stream. - Timestamp
- A 33-bit Elementary Stream timestamp, used to represent PTS and DTS values which may appear in an Elementary Stream header.
Enums§
- Copyright
- Indicates the copyright status of the contents of the Elementary Stream packet.
- Data
Alignment - Indicates if the start of some ‘unit’ of Elementary Stream content is immediately at the start of the PES packet payload.
- DsmTrick
Mode - Digital Storage Media ‘trick mode’ options.
- Frequency
Truncation Coefficient Selection - Indication of the restricted set of coefficients that may have been used to encode the video,
specified within
DsmTrickMode. - Original
OrCopy - Indicates weather the contents of the Elementary Stream packet are original or a copy.
- PesContents
- Either
PesContents::Payload, when thePesHeaderhas no extra fields, orPesContents::Parsed, when the header provides additional optional fields exposed in aParsedPesContentsobject. - PesError
- Errors which may be encountered while processing PES data.
- PesLength
- Type for the length of a PES packet
- PtsDts
- Contains some combination of PTS and DTS timestamps (or maybe neither).
- Timestamp
Error - Detail about the formatting problem which prevented a
Timestampvalue being parsed.
Traits§
- Elementary
Stream Consumer - Trait for types that will receive call-backs as pieces of a specific elementary stream are encounted within a transport stream.