TSDuck v3.43-4509
MPEG Transport Stream Toolkit
Loading...
Searching...
No Matches

Representation of a Layered Coding Transport (LCT) header. More...

#include <tsLCTHeader.h>

Inheritance diagram for ts::LCTHeader:
Collaboration diagram for ts::LCTHeader:

Public Member Functions

 LCTHeader ()=default
 Default constructor.
 
void clear ()
 Clear the content of a binary LCT header.
 
bool deserialize (const uint8_t *&addr, size_t &size)
 Deserialize a binary LCT header.
 
virtual UString toString () const override
 Convert to a string object.
 

Public Attributes

ByteBlock cci {}
 Congestion control information.
 
std::optional< uint8_t > cenc {}
 Optional content encoding algorithm from header HET_CENC.
 
bool close_object = false
 Close Object flag.
 
bool close_session = false
 Close Session flag.
 
uint8_t codepoint = 0
 Codepoint identifier. Contains the FEC Encoding ID in FLUTE (RFC 3926, 5.1).
 
std::map< uint8_t, ByteBlockext {}
 Header extensions, indexed by type (HET).
 
FDTInstanceHeader fdt {}
 Optional FDT instance from header HET_FDT.
 
FECPayloadId fpi {}
 FEC Payload ID, following the LCT header.
 
FECTransmissionInformation fti {}
 Optional FEC transmission information from header HET_FTI.
 
uint8_t lct_version = 0
 LCT protocol version (4 bits).
 
NIPActualCarrierInformation naci {}
 Optional DVB-NIP carrier information from header HET_NACI.
 
uint8_t psi = 0
 Protocol-Specific Indication (2 bits).
 
std::optional< Timetime {}
 Optional sender current time from header HET_TIME.
 
uint64_t toi = 0
 Transport Object Identifier (low 64 bits).
 
uint64_t toi_high = 0
 Transport Object Identifier (high 64 bits).
 
size_t toi_length = 0
 Length in bytes of TOI field.
 
uint64_t tsi = 0
 Transport Session Identifier.
 
size_t tsi_length = 0
 Length in bytes of TSI field.
 
bool valid = false
 The LCT Header was successfully parsed.
 

Detailed Description

Representation of a Layered Coding Transport (LCT) header.

By extension, for use in context of FLUTE and DVB-NIP, the corresponding optional headers are added.

See also
IETF RFC 5651

Member Function Documentation

◆ deserialize()

bool ts::LCTHeader::deserialize ( const uint8_t *&  addr,
size_t &  size 
)

Deserialize a binary LCT header.

Parameters
[in,out]addrAddress of binary area. Updated to point after LCT header.
[in,out]sizeSize of binary area. Updated with remaining size after deserializing the LCT header.
Returns
True on success, false on error. Same as valid field.

◆ toString()

virtual UString ts::LCTHeader::toString ( ) const
overridevirtual

Convert to a string object.

Returns
This object, converted as a string.

Implements ts::StringifyInterface.


The documentation for this class was generated from the following file: