TSDuck v3.40-4001
MPEG Transport Stream Toolkit
|
Abstract base class for MPEG PSI/SI tables. More...
#include <tsAbstractTable.h>
Classes | |
class | EntryBase |
Base inner class for table entries with one or more descriptor lists. More... | |
class | EntryWithDescriptors |
Base inner class for table entries with one descriptor list. More... | |
class | EntryWithDescriptorsList |
Template map of subclasses of EntryBase, indexed by size_t. More... | |
class | EntryWithDescriptorsMap |
Template map of subclasses of EntryBase. More... | |
Public Member Functions | |
const UString & | attribute () const |
Get the generic user-defined "attribute" string of the table. | |
virtual void | clear () override |
This method clears the content of the table or descriptor. | |
template<typename INT , typename std::enable_if< std::is_integral< INT >::value, int >::type = 0> | |
UString | dataName (const UChar *section, INT value, NamesFlags flags=NamesFlags::NAME, size_t bits=0, INT alternate=0) |
Get a name from a specified section in the DVB names file for that signalization structure. | |
virtual Standards | definingStandards () const override |
Get the list of standards which define this object. | |
bool | deserialize (DuckContext &duck, const BinaryTable &bin) |
This method deserializes a binary table. | |
virtual void | fromXML (DuckContext &duck, const xml::Element *element) override final |
This method converts an XML structure to a table or descriptor in this object. | |
void | invalidate () |
Invalidate this object. | |
virtual bool | isPrivate () const |
Check if the table is a private one (ie. | |
bool | isValid () const |
Check if this object is valid. | |
bool | serialize (DuckContext &duck, BinaryTable &bin) const |
This method serializes a table. | |
void | setAttribute (const UString &attr) |
Set a generic user-defined string as "attribute" of the table. | |
TID | tableId () const |
Get the table_id. | |
virtual DescriptorList * | topLevelDescriptorList () |
Get the address of the "top-level descriptor list" of the table. | |
virtual const DescriptorList * | topLevelDescriptorList () const |
Get the address of the "top-level descriptor list" of the table (constant). | |
virtual xml::Element * | toXML (DuckContext &duck, xml::Element *parent) const override final |
This method converts this object to XML. | |
UString | xmlName () const |
Get the XMl node name representing this table or descriptor. | |
Static Public Member Functions | |
template<typename INT , typename std::enable_if< std::is_integral< INT >::value, int >::type = 0> | |
static UString | DataName (const UChar *xml_name, const UChar *section, INT value, NamesFlags flags=NamesFlags::NAME, size_t bits=0, INT alternate=0) |
Get a name from a specified section in the DVB names file. | |
static xml::Element * | GetOrCreateMetadata (xml::Element *element) |
Get the <metadata> structure inside a XML element representing a table. | |
Static Public Attributes | |
static const UChar *const | XML_GENERIC_DESCRIPTOR |
XML tag name for generic descriptors. | |
static const UChar *const | XML_GENERIC_LONG_TABLE |
XML tag name for generic tables with long sections. | |
static const UChar *const | XML_GENERIC_SHORT_TABLE |
XML tag name for generic short sections. | |
Protected Member Functions | |
AbstractTable (TID tid, const UChar *xml_name, Standards standards, const UChar *xml_legacy_name=nullptr) | |
Protected constructor for subclasses. | |
void | addOneSection (BinaryTable &table, PSIBuffer &payload) const |
Helper method for serializePayload(): add a section in a binary table. | |
virtual void | addOneSectionImpl (BinaryTable &table, PSIBuffer &payload) const |
Actual implementation of adding one section in a binary table. | |
virtual bool | analyzeXML (DuckContext &duck, const xml::Element *element)=0 |
Helper method to convert this object from XML. | |
virtual void | buildXML (DuckContext &duck, xml::Element *root) const =0 |
Helper method to convert this object to XML. | |
virtual void | clearContent ()=0 |
Helper method to clear the content of the table or descriptor. | |
virtual void | deserializePayload (PSIBuffer &buf, const Section §ion)=0 |
This abstract method deserializes the payload of one section. | |
virtual void | deserializePayloadWrapper (PSIBuffer &buf, const Section §ion) |
Wrapper for deserializePayload(). | |
virtual bool | isValidTableId (TID tid) const |
This method checks if a table id is valid for this object. | |
virtual size_t | maxPayloadSize () const |
Get the maximum size in bytes of the payload of sections of this table. | |
virtual void | serializePayload (BinaryTable &table, PSIBuffer &buf) const =0 |
This abstract method serializes the payload of all sections in the table. | |
virtual bool | useTrailingCRC32 () const |
Check if the sections of this table have a trailing CRC32. | |
Protected Attributes | |
TID | _table_id = TID_NULL |
The table id can be modified by subclasses only. | |
Abstract base class for MPEG PSI/SI tables.
Some methods are declared as "virtual final". Since these methods are not inherited, this seems useless. This is in fact a compilation check. These methods were formerly designed to be overridden by subclasses but the implementation has changed. They are now defined in this class only and call a new pure virtual method. The "final" attribute is here to detect old subclasses which do not yet use the new scheme.
A table subclass shall override the following methods:
A table subclass may also override the following methods when necessary:
|
protected |
Protected constructor for subclasses.
[in] | tid | Table id. |
[in] | xml_name | Table name, as used in XML structures. |
[in] | standards | A bit mask of standards which define this structure. |
[in] | xml_legacy_name | Table or descriptor legacy XML name. Ignored if null pointer. |
|
inline |
Get the table_id.
|
virtual |
Check if the table is a private one (ie.
not MPEG-defined). The default implementation returns true. MPEG-defined tables should override this method to return false.
Reimplemented in ts::CAT, ts::DSMCCStreamDescriptorsTable, ts::PAT, ts::PMT, ts::TSDT, ts::CableEmergencyAlertTable, and ts::SpliceInformationTable.
bool ts::AbstractTable::serialize | ( | DuckContext & | duck, |
BinaryTable & | bin | ||
) | const |
This method serializes a table.
[in,out] | duck | TSDuck execution context. |
[out] | bin | A binary table object. Its content is replaced with a binary representation of this object. |
bool ts::AbstractTable::deserialize | ( | DuckContext & | duck, |
const BinaryTable & | bin | ||
) |
This method deserializes a binary table.
In case of success, this object is replaced with the interpreted content of bin. In case of error, this object is invalidated.
[in,out] | duck | TSDuck execution context. |
[in] | bin | A binary table to interpret according to the table subclass. |
|
inline |
Set a generic user-defined string as "attribute" of the table.
The semantics of this attribute string is not defined. It is used by the application. The attribute string can be found in the <metadata>
structure of the XML representation of the table.
[in] | attr | Generic string to set as attribute. |
|
virtual |
Get the address of the "top-level descriptor list" of the table.
Some tables have descriptor lists, and sometimes two levels of descriptor lists. This is the case of the PMT, NIT, BAT, etc. The "top-level descriptor list" is present once in the table. It describes the service (PMT), the network (NIT) or the operator (BAT). At the second level, there is one descriptor list per component (PMT), or per transport stream (NIT, BAT). Sometimes, when exploring a second-level descriptor list, it is useful to also explore the top-level descriptor list. This virtual method returns a pointer to the top-level descriptor list. Thus, when exploring a second-level descriptor list, using the table pointer in that list, we can get a reference to the higher-level list.
The default implementation returns the null pointer.
Reimplemented in ts::DCCSCT, ts::DCCT, ts::MGT, ts::RRT, ts::STT, ts::VCT, ts::AIT, ts::INT, ts::RCT, ts::RNT, ts::SelectionInformationTable, ts::TOT, ts::UNT, ts::BIT, ts::CDT, ts::ITT, ts::PMT, ts::CableEmergencyAlertTable, ts::SpliceInformationTable, ts::AbstractDescriptorsTable, and ts::AbstractTransportListTable.
|
virtual |
Get the address of the "top-level descriptor list" of the table (constant).
Reimplemented in ts::DCCSCT, ts::DCCT, ts::MGT, ts::RRT, ts::STT, ts::VCT, ts::AIT, ts::INT, ts::RCT, ts::RNT, ts::SelectionInformationTable, ts::TOT, ts::UNT, ts::BIT, ts::CDT, ts::ITT, ts::PMT, ts::CableEmergencyAlertTable, ts::SpliceInformationTable, ts::AbstractDescriptorsTable, and ts::AbstractTransportListTable.
|
inline |
Get the generic user-defined "attribute" string of the table.
|
overridevirtual |
This method clears the content of the table or descriptor.
Upon return, the object is valid and in the same empty state as after a default constructor.
Reimplemented from ts::AbstractSignalization.
Reimplemented in ts::AbstractLongTable.
|
finaloverridevirtual |
This method converts this object to XML.
When this object is valid, this method creates a root node with the default XML name and then invokes buildXML() in the subclass to populate the XML node.
Important: Implementers of signalization classes shall not override this class. Implement the protected method buildXML() instead.
[in,out] | duck | TSDuck execution context. |
[in,out] | parent | The parent node for the new XML tree. |
Reimplemented from ts::AbstractSignalization.
|
finaloverridevirtual |
This method converts an XML structure to a table or descriptor in this object.
In case of success, this object is replaced with the interpreted content of the XML structure. In case of error, this object is invalidated.
This method checks the name of the XML node and then invokes analyzeXML() in the subclass. Depending on the returned values of analyzeXML(), this object is either validated or invalidated.
Important: Implementers of signalization classes shall not override this class. Implement the protected method analyzeXML() instead.
[in,out] | duck | TSDuck execution context. |
[in] | element | XML element to convert. |
Reimplemented from ts::AbstractSignalization.
|
static |
Get the <metadata> structure inside a XML element representing a table.
If the <metadata> structure does not exist, it is created.
[in,out] | element | The XML element representing a table. |
|
protectedvirtual |
This method checks if a table id is valid for this object.
[in] | tid | A table id to check. |
|
protectedvirtual |
Get the maximum size in bytes of the payload of sections of this table.
Reimplemented in ts::RRT, ts::STT, ts::VCT, ts::AIT, ts::BAT, ts::NIT, ts::RST, ts::SAT, ts::SDT, ts::CableEmergencyAlertTable, ts::SpliceInformationTable, and ts::AbstractLongTable.
|
protectedvirtual |
Check if the sections of this table have a trailing CRC32.
This is usually false for short sections but some short sections such as DVB-TOT use a CRC32.
Reimplemented in ts::TOT, ts::DLT, ts::SpliceInformationTable, and ts::AbstractLongTable.
|
protectedpure virtual |
This abstract method serializes the payload of all sections in the table.
When serialize() is called, the output binary table is cleared and serializePayload() is called. A subclass shall implement serializePayload() which adds all required sections in the binary table.
Note that it is not necessary to explicitly add the last (or only) section. Upon return from serializePayload(), serialize() checks the state of the payload buffer. If the output binary table is still empty or if the payload buffer is not empty (or not empty after the last saved write position), then addOneSection() is automatically called.
[in,out] | table | The binary table into which this object shall be serialized. The table is initially empty when serialize() calls serializePayload(). |
[in,out] | buf | A PSIBuffer with the appropriate size for the section payload. The payload buffer is initially empty when serialize() calls serializePayload(). |
Implemented in ts::ATSCEIT, ts::DCCSCT, ts::DCCT, ts::ETT, ts::MGT, ts::RRT, ts::STT, ts::VCT, ts::AIT, ts::CIT, ts::DiscontinuityInformationTable, ts::EIT, ts::INT, ts::RCT, ts::RNT, ts::RST, ts::SAT, ts::SDT, ts::SelectionInformationTable, ts::TDT, ts::TOT, ts::UNT, ts::BIT, ts::CDT, ts::DCT, ts::DLT, ts::ERT, ts::ITT, ts::LDT, ts::LIT, ts::NBIT, ts::PCAT, ts::SDTT, ts::PAT, ts::PMT, ts::CableEmergencyAlertTable, ts::SpliceInformationTable, ts::AbstractDescriptorsTable, and ts::AbstractTransportListTable.
|
protectedpure virtual |
This abstract method deserializes the payload of one section.
When deserialize() is called, this object is cleared and validated. Then, deserializePayload() is invoked for each section in the binary table. A subclass shall implement deserializePayload() which adds the content of the binary section to the C++ object. Do not reset the object in deserializePayload() since it is repeatedly called for each section of a single binary table.
[in,out] | buf | Deserialization buffer. The subclass shall read the descriptor payload from buf. The end of read is the end of the binary payload. If any kind of error is reported in the buffer or if the payload is not completely read, the deserialization is considered as invalid. |
[in] | section | A reference to the section. Can be used to access values in the section header (typically for long sections). |
Implemented in ts::ATSCEIT, ts::DCCSCT, ts::DCCT, ts::ETT, ts::MGT, ts::RRT, ts::STT, ts::VCT, ts::AIT, ts::CIT, ts::DiscontinuityInformationTable, ts::EIT, ts::INT, ts::RCT, ts::RNT, ts::RST, ts::SAT, ts::SDT, ts::SelectionInformationTable, ts::TDT, ts::TOT, ts::UNT, ts::BIT, ts::CDT, ts::DCT, ts::DLT, ts::ERT, ts::ITT, ts::LDT, ts::LIT, ts::NBIT, ts::PCAT, ts::SDTT, ts::PAT, ts::PMT, ts::CableEmergencyAlertTable, ts::SpliceInformationTable, ts::AbstractDescriptorsTable, and ts::AbstractTransportListTable.
|
protected |
Helper method for serializePayload(): add a section in a binary table.
For long tables, the section number is always one more than the current last section in the table.
If the payload buffer has a pushed read/write state, this state is restored and immediately pushed again. The typical use case is the following:
[in,out] | table | The binary table into which the new section shall be added. |
[in,out] | payload | A PSIBuffer containing the section payload between the read and the write pointer. |
|
protectedvirtual |
Actual implementation of adding one section in a binary table.
Do not call directly, it is only called by addOneSection() and is overridden in AbstractLongTable.
[in,out] | table | The binary table into which the new section shall be added. |
[in,out] | payload | A PSIBuffer containing the section payload between the read and the write pointer. |
Reimplemented in ts::AbstractLongTable.
|
protectedvirtual |
Wrapper for deserializePayload().
This is a method to overload in intermediate classes to avoid using "call superclass" to all tables.
[in,out] | buf | Deserialization buffer. |
[in] | section | A reference to the section. |
Reimplemented in ts::AbstractLongTable.
|
inlineinherited |
Check if this object is valid.
|
inlineinherited |
Invalidate this object.
This object must be rebuilt.
|
inherited |
Get the XMl node name representing this table or descriptor.
|
overridevirtualinherited |
Get the list of standards which define this object.
Implements ts::AbstractDefinedByStandards.
|
inlinestaticinherited |
Get a name from a specified section in the DVB names file.
INT | An integer type. |
[in] | xml_name | Table or descriptor name, as used in XML structures. |
[in] | section | Name of section to search. Not case-sensitive. The actual section in the names file is prefixed by the XML name, followed by a dot. |
[in] | value | Value to get the name for. |
[in] | flags | Presentation flags. |
[in] | bits | Nominal size in bits of the data, optional. |
[in] | alternate | Display this integer value if flags ALTERNATE is set. |
|
inlineinherited |
Get a name from a specified section in the DVB names file for that signalization structure.
INT | An integer type. |
[in] | section | Name of section to search. Not case-sensitive. The actual section in the names file is prefixed by the XML name of the structure, followed by a dot. |
[in] | value | Value to get the name for. |
[in] | flags | Presentation flags. |
[in] | bits | Nominal size in bits of the data, optional. |
[in] | alternate | Display this integer value if flags ALTERNATE is set. |
|
protectedpure virtualinherited |
Helper method to clear the content of the table or descriptor.
It is called by clear(). In clearContent(), the subclass shall simply revert the value of all fields to their original values in the default constructor.
Implemented in ts::AV1VideoDescriptor, ts::ATSCAC3AudioStreamDescriptor, ts::ATSCEAC3AudioDescriptor, ts::ATSCStuffingDescriptor, ts::ATSCTimeShiftedServiceDescriptor, ts::CaptionServiceDescriptor, ts::ComponentNameDescriptor, ts::ContentAdvisoryDescriptor, ts::DCCArrivingRequestDescriptor, ts::DCCDepartingRequestDescriptor, ts::ExtendedChannelNameDescriptor, ts::GenreDescriptor, ts::RedistributionControlDescriptor, ts::ServiceLocationDescriptor, ts::AVS2AudioDescriptor, ts::AVS3AudioDescriptor, ts::AVS3VideoDescriptor, ts::DTGGuidanceDescriptor, ts::DTGServiceAttributeDescriptor, ts::DTGShortServiceNameDescriptor, ts::AACDescriptor, ts::AbstractLogicalChannelDescriptor, ts::AbstractMultilingualDescriptor, ts::AbstractPreferredNameIdentifierDescriptor, ts::AbstractPreferredNameListDescriptor, ts::AdaptationFieldDataDescriptor, ts::AncillaryDataDescriptor, ts::AnnouncementSupportDescriptor, ts::ApplicationDescriptor, ts::ApplicationIconsDescriptor, ts::ApplicationRecordingDescriptor, ts::ApplicationSignallingDescriptor, ts::ApplicationStorageDescriptor, ts::ApplicationUsageDescriptor, ts::AudioPreselectionDescriptor, ts::BouquetNameDescriptor, ts::C2BundleDeliverySystemDescriptor, ts::C2DeliverySystemDescriptor, ts::CableDeliverySystemDescriptor, ts::CAIdentifierDescriptor, ts::CellFrequencyLinkDescriptor, ts::CellListDescriptor, ts::CIAncillaryDataDescriptor, ts::ComponentDescriptor, ts::ContentDescriptor, ts::ContentIdentifierDescriptor, ts::CountryAvailabilityDescriptor, ts::CPCMDeliverySignallingDescriptor, ts::CPDescriptor, ts::CPIdentifierDescriptor, ts::DataBroadcastDescriptor, ts::DataBroadcastIdDescriptor, ts::DefaultAuthorityDescriptor, ts::DIILocationDescriptor, ts::DSNGDescriptor, ts::DTSDescriptor, ts::DTSHDDescriptor, ts::DTSNeuralDescriptor, ts::DVBAC3Descriptor, ts::DVBAC4Descriptor, ts::DVBDTSUHDDescriptor, ts::DVBEnhancedAC3Descriptor, ts::DVBHTMLApplicationBoundaryDescriptor, ts::DVBHTMLApplicationDescriptor, ts::DVBHTMLApplicationLocationDescriptor, ts::DVBJApplicationDescriptor, ts::DVBJApplicationLocationDescriptor, ts::DVBServiceProminenceDescriptor, ts::DVBStuffingDescriptor, ts::DVBTimeShiftedServiceDescriptor, ts::ECMRepetitionRateDescriptor, ts::ExtendedEventDescriptor, ts::ExternalApplicationAuthorizationDescriptor, ts::FrequencyListDescriptor, ts::FTAContentManagementDescriptor, ts::GraphicsConstraintsDescriptor, ts::ImageIconDescriptor, ts::IPMACGenericStreamLocationDescriptor, ts::IPMACPlatformNameDescriptor, ts::IPMACPlatformProviderNameDescriptor, ts::IPMACStreamLocationDescriptor, ts::IPSignallingDescriptor, ts::ISPAccessModeDescriptor, ts::LinkageDescriptor, ts::LocalTimeOffsetDescriptor, ts::MessageDescriptor, ts::MosaicDescriptor, ts::MultilingualComponentDescriptor, ts::MultilingualServiceNameDescriptor, ts::NetworkChangeNotifyDescriptor, ts::NetworkNameDescriptor, ts::NVODReferenceDescriptor, ts::ParentalRatingDescriptor, ts::PartialTransportStreamDescriptor, ts::PDCDescriptor, ts::PrefetchDescriptor, ts::PrivateDataSpecifierDescriptor, ts::ProtectionMessageDescriptor, ts::RARoverDVBstreamDescriptor, ts::RARoverIPDescriptor, ts::RelatedContentDescriptor, ts::RNTScanDescriptor, ts::S2SatelliteDeliverySystemDescriptor, ts::S2XSatelliteDeliverySystemDescriptor, ts::S2Xv2SatelliteDeliverySystemDescriptor, ts::SatelliteDeliverySystemDescriptor, ts::SchedulingDescriptor, ts::ScramblingDescriptor, ts::ServiceAvailabilityDescriptor, ts::ServiceDescriptor, ts::ServiceIdentifierDescriptor, ts::ServiceListDescriptor, ts::ServiceMoveDescriptor, ts::ServiceRelocatedDescriptor, ts::SHDeliverySystemDescriptor, ts::ShortEventDescriptor, ts::ShortSmoothingBufferDescriptor, ts::SimpleApplicationBoundaryDescriptor, ts::SimpleApplicationLocationDescriptor, ts::SSUDataBroadcastIdDescriptor, ts::SSUEnhancedMessageDescriptor, ts::SSUEventNameDescriptor, ts::SSULinkageDescriptor, ts::SSULocationDescriptor, ts::SSUMessageDescriptor, ts::SSUSubgroupAssociationDescriptor, ts::SSUURIDescriptor, ts::StreamIdentifierDescriptor, ts::SubtitlingDescriptor, ts::SupplementaryAudioDescriptor, ts::T2DeliverySystemDescriptor, ts::T2MIDescriptor, ts::TargetIPAddressDescriptor, ts::TargetIPSlashDescriptor, ts::TargetIPSourceSlashDescriptor, ts::TargetIPv6AddressDescriptor, ts::TargetIPv6SlashDescriptor, ts::TargetIPv6SourceSlashDescriptor, ts::TargetMACAddressDescriptor, ts::TargetMACAddressRangeDescriptor, ts::TargetRegionDescriptor, ts::TargetRegionNameDescriptor, ts::TargetSerialNumberDescriptor, ts::TargetSmartcardDescriptor, ts::TelephoneDescriptor, ts::TeletextDescriptor, ts::TerrestrialDeliverySystemDescriptor, ts::TimeShiftedEventDescriptor, ts::TimeSliceFECIdentifierDescriptor, ts::TransportProtocolDescriptor, ts::TransportStreamDescriptor, ts::TTMLSubtitlingDescriptor, ts::TVAIdDescriptor, ts::UpdateDescriptor, ts::URILinkageDescriptor, ts::VBIDataDescriptor, ts::VideoDepthRangeDescriptor, ts::VVCSubpicturesDescriptor, ts::EacemStreamIdentifierDescriptor, ts::EutelsatChannelNumberDescriptor, ts::AreaBroadcastingInformationDescriptor, ts::AudioComponentDescriptor, ts::BasicLocalEventDescriptor, ts::BoardInformationDescriptor, ts::BroadcasterNameDescriptor, ts::CAContractInfoDescriptor, ts::CAEMMTSDescriptor, ts::CarouselCompatibleCompositeDescriptor, ts::CAServiceDescriptor, ts::ConditionalPlaybackDescriptor, ts::ContentAvailabilityDescriptor, ts::DataComponentDescriptor, ts::DataContentDescriptor, ts::DigitalCopyControlDescriptor, ts::DownloadContentDescriptor, ts::EmergencyInformationDescriptor, ts::EventGroupDescriptor, ts::ExtendedBroadcasterDescriptor, ts::HierarchicalTransmissionDescriptor, ts::HybridInformationDescriptor, ts::ISDBAccessControlDescriptor, ts::ISDBComponentGroupDescriptor, ts::ISDBConnectedTransmissionDescriptor, ts::ISDBHyperlinkDescriptor, ts::ISDBLDTLinkageDescriptor, ts::ISDBNetworkIdentifierDescriptor, ts::ISDBTargetRegionDescriptor, ts::ISDBTerrestrialDeliverySystemDescriptor, ts::LogoTransmissionDescriptor, ts::NetworkDownloadContentDescriptor, ts::NodeRelationDescriptor, ts::PartialReceptionDescriptor, ts::PartialTSTimeDescriptor, ts::ReferenceDescriptor, ts::SeriesDescriptor, ts::ServiceGroupDescriptor, ts::ShortNodeInformationDescriptor, ts::SIParameterDescriptor, ts::SIPrimeTSDescriptor, ts::STCReferenceDescriptor, ts::SystemManagementDescriptor, ts::TSInformationDescriptor, ts::VideoDecodeControlDescriptor, ts::AFExtensionsDescriptor, ts::AssociationTagDescriptor, ts::AudioStreamDescriptor, ts::AuxiliaryVideoStreamDescriptor, ts::AVCTimingAndHRDDescriptor, ts::AVCVideoDescriptor, ts::CADescriptor, ts::CarouselIdentifierDescriptor, ts::ContentLabellingDescriptor, ts::CopyrightDescriptor, ts::DataStreamAlignmentDescriptor, ts::DeferredAssociationTagsDescriptor, ts::EVCTimingAndHRDDescriptor, ts::EVCVideoDescriptor, ts::ExternalESIdDescriptor, ts::FMCDescriptor, ts::GreenExtensionDescriptor, ts::HEVCHierarchyExtensionDescriptor, ts::HEVCOperationPointDescriptor, ts::HEVCSubregionDescriptor, ts::HEVCTileSubstreamDescriptor, ts::HEVCTimingAndHRDDescriptor, ts::HEVCVideoDescriptor, ts::HierarchyDescriptor, ts::IBPDescriptor, ts::IODDescriptor, ts::ISO639LanguageDescriptor, ts::J2KVideoDescriptor, ts::JPEGXSVideoDescriptor, ts::LCEVCLinkageDescriptor, ts::LCEVCVideoDescriptor, ts::M4MuxBufferSizeDescriptor, ts::M4MuxTimingDescriptor, ts::MaximumBitrateDescriptor, ts::MediaServiceKindDescriptor, ts::MetadataDescriptor, ts::MetadataPointerDescriptor, ts::MetadataSTDDescriptor, ts::MPEG2AACAudioDescriptor, ts::MPEG2StereoscopicVideoFormatDescriptor, ts::MPEG4AudioDescriptor, ts::MPEG4AudioExtensionDescriptor, ts::MPEG4TextDescriptor, ts::MPEG4VideoDescriptor, ts::MPEGH3DAudioCommandDescriptor, ts::MPEGH3DAudioConfigDescriptor, ts::MPEGH3DAudioDescriptor, ts::MPEGH3DAudioDRCLoudnessDescriptor, ts::MPEGH3DAudioMultiStreamDescriptor, ts::MPEGH3DAudioSceneDescriptor, ts::MPEGH3DAudioTextLabelDescriptor, ts::MultiplexBufferDescriptor, ts::MultiplexBufferUtilizationDescriptor, ts::MuxCodeDescriptor, ts::MVCExtensionDescriptor, ts::MVCOperationPointDescriptor, ts::NPTEndpointDescriptor, ts::NPTReferenceDescriptor, ts::PrivateDataIndicatorDescriptor, ts::QualityExtensionDescriptor, ts::RegistrationDescriptor, ts::SLDescriptor, ts::SmoothingBufferDescriptor, ts::STDDescriptor, ts::StereoscopicProgramInfoDescriptor, ts::StereoscopicVideoInfoDescriptor, ts::StreamEventDescriptor, ts::StreamModeDescriptor, ts::SVCExtensionDescriptor, ts::SystemClockDescriptor, ts::TargetBackgroundGridDescriptor, ts::TransportProfileDescriptor, ts::VideoStreamDescriptor, ts::VideoWindowDescriptor, ts::VirtualSegmentationDescriptor, ts::VVCTimingAndHRDDescriptor, ts::VVCVideoDescriptor, ts::NorDigLogicalChannelDescriptorV1, ts::NorDigLogicalChannelDescriptorV2, ts::CueIdentifierDescriptor, ts::EASAudioFileDescriptor, ts::EASInbandDetailsChannelDescriptor, ts::EASInbandExceptionChannelsDescriptor, ts::EASMetadataDescriptor, ts::SpliceAvailDescriptor, ts::SpliceDTMFDescriptor, ts::SpliceSegmentationDescriptor, ts::SpliceTimeDescriptor, ts::SkyLogicalChannelNumberDescriptor, ts::UWAVideoStreamDescriptor, ts::SpliceInsert, ts::SpliceSchedule, ts::ATSCEIT, ts::DCCSCT, ts::DCCT, ts::ETT, ts::MGT, ts::RRT, ts::STT, ts::VCT, ts::AIT, ts::CIT, ts::DiscontinuityInformationTable, ts::EIT, ts::INT, ts::RCT, ts::RNT, ts::RST, ts::SAT, ts::SDT, ts::SelectionInformationTable, ts::TDT, ts::TOT, ts::UNT, ts::BIT, ts::CDT, ts::DCT, ts::DLT, ts::ERT, ts::ITT, ts::LDT, ts::LIT, ts::NBIT, ts::PCAT, ts::SDTT, ts::PAT, ts::PMT, ts::CableEmergencyAlertTable, ts::SpliceInformationTable, ts::AbstractDescriptorsTable, and ts::AbstractTransportListTable.
|
protectedpure virtualinherited |
Helper method to convert this object to XML.
It is called by toXML() only when the object is valid. The root element is already built with the appropriate XML node name. In buildXML(), the subclass shall simply populate the XML node.
[in,out] | root | The root node for the new XML tree. |
[in,out] | duck | TSDuck execution context. |
Implemented in ts::AV1VideoDescriptor, ts::ATSCAC3AudioStreamDescriptor, ts::ATSCEAC3AudioDescriptor, ts::ATSCStuffingDescriptor, ts::ATSCTimeShiftedServiceDescriptor, ts::CaptionServiceDescriptor, ts::ComponentNameDescriptor, ts::ContentAdvisoryDescriptor, ts::DCCArrivingRequestDescriptor, ts::DCCDepartingRequestDescriptor, ts::ExtendedChannelNameDescriptor, ts::GenreDescriptor, ts::RedistributionControlDescriptor, ts::ServiceLocationDescriptor, ts::AVS2AudioDescriptor, ts::AVS3AudioDescriptor, ts::AVS3VideoDescriptor, ts::DTGGuidanceDescriptor, ts::DTGServiceAttributeDescriptor, ts::DTGShortServiceNameDescriptor, ts::AACDescriptor, ts::AbstractLogicalChannelDescriptor, ts::AbstractMultilingualDescriptor, ts::AbstractPreferredNameIdentifierDescriptor, ts::AbstractPreferredNameListDescriptor, ts::AdaptationFieldDataDescriptor, ts::AncillaryDataDescriptor, ts::AnnouncementSupportDescriptor, ts::ApplicationDescriptor, ts::ApplicationIconsDescriptor, ts::ApplicationRecordingDescriptor, ts::ApplicationSignallingDescriptor, ts::ApplicationStorageDescriptor, ts::ApplicationUsageDescriptor, ts::AudioPreselectionDescriptor, ts::BouquetNameDescriptor, ts::C2BundleDeliverySystemDescriptor, ts::C2DeliverySystemDescriptor, ts::CableDeliverySystemDescriptor, ts::CAIdentifierDescriptor, ts::CellFrequencyLinkDescriptor, ts::CellListDescriptor, ts::CIAncillaryDataDescriptor, ts::ComponentDescriptor, ts::ContentDescriptor, ts::ContentIdentifierDescriptor, ts::CountryAvailabilityDescriptor, ts::CPCMDeliverySignallingDescriptor, ts::CPDescriptor, ts::CPIdentifierDescriptor, ts::DataBroadcastDescriptor, ts::DataBroadcastIdDescriptor, ts::DefaultAuthorityDescriptor, ts::DIILocationDescriptor, ts::DSNGDescriptor, ts::DTSDescriptor, ts::DTSHDDescriptor, ts::DTSNeuralDescriptor, ts::DVBAC3Descriptor, ts::DVBAC4Descriptor, ts::DVBDTSUHDDescriptor, ts::DVBEnhancedAC3Descriptor, ts::DVBHTMLApplicationBoundaryDescriptor, ts::DVBHTMLApplicationDescriptor, ts::DVBHTMLApplicationLocationDescriptor, ts::DVBJApplicationDescriptor, ts::DVBJApplicationLocationDescriptor, ts::DVBServiceProminenceDescriptor, ts::DVBStuffingDescriptor, ts::DVBTimeShiftedServiceDescriptor, ts::ECMRepetitionRateDescriptor, ts::ExtendedEventDescriptor, ts::ExternalApplicationAuthorizationDescriptor, ts::FrequencyListDescriptor, ts::FTAContentManagementDescriptor, ts::GraphicsConstraintsDescriptor, ts::ImageIconDescriptor, ts::IPMACGenericStreamLocationDescriptor, ts::IPMACPlatformNameDescriptor, ts::IPMACPlatformProviderNameDescriptor, ts::IPMACStreamLocationDescriptor, ts::IPSignallingDescriptor, ts::ISPAccessModeDescriptor, ts::LinkageDescriptor, ts::LocalTimeOffsetDescriptor, ts::MessageDescriptor, ts::MosaicDescriptor, ts::MultilingualComponentDescriptor, ts::MultilingualServiceNameDescriptor, ts::NetworkChangeNotifyDescriptor, ts::NetworkNameDescriptor, ts::NVODReferenceDescriptor, ts::ParentalRatingDescriptor, ts::PartialTransportStreamDescriptor, ts::PDCDescriptor, ts::PrefetchDescriptor, ts::PrivateDataSpecifierDescriptor, ts::ProtectionMessageDescriptor, ts::RARoverDVBstreamDescriptor, ts::RARoverIPDescriptor, ts::RelatedContentDescriptor, ts::RNTScanDescriptor, ts::S2SatelliteDeliverySystemDescriptor, ts::S2XSatelliteDeliverySystemDescriptor, ts::S2Xv2SatelliteDeliverySystemDescriptor, ts::SatelliteDeliverySystemDescriptor, ts::SchedulingDescriptor, ts::ScramblingDescriptor, ts::ServiceAvailabilityDescriptor, ts::ServiceDescriptor, ts::ServiceIdentifierDescriptor, ts::ServiceListDescriptor, ts::ServiceMoveDescriptor, ts::ServiceRelocatedDescriptor, ts::SHDeliverySystemDescriptor, ts::ShortEventDescriptor, ts::ShortSmoothingBufferDescriptor, ts::SimpleApplicationBoundaryDescriptor, ts::SimpleApplicationLocationDescriptor, ts::SSUDataBroadcastIdDescriptor, ts::SSUEnhancedMessageDescriptor, ts::SSUEventNameDescriptor, ts::SSULinkageDescriptor, ts::SSULocationDescriptor, ts::SSUMessageDescriptor, ts::SSUSubgroupAssociationDescriptor, ts::SSUURIDescriptor, ts::StreamIdentifierDescriptor, ts::SubtitlingDescriptor, ts::SupplementaryAudioDescriptor, ts::T2DeliverySystemDescriptor, ts::T2MIDescriptor, ts::TargetIPAddressDescriptor, ts::TargetIPSlashDescriptor, ts::TargetIPSourceSlashDescriptor, ts::TargetIPv6AddressDescriptor, ts::TargetIPv6SlashDescriptor, ts::TargetIPv6SourceSlashDescriptor, ts::TargetMACAddressDescriptor, ts::TargetMACAddressRangeDescriptor, ts::TargetRegionDescriptor, ts::TargetRegionNameDescriptor, ts::TargetSerialNumberDescriptor, ts::TargetSmartcardDescriptor, ts::TelephoneDescriptor, ts::TeletextDescriptor, ts::TerrestrialDeliverySystemDescriptor, ts::TimeShiftedEventDescriptor, ts::TimeSliceFECIdentifierDescriptor, ts::TransportProtocolDescriptor, ts::TransportStreamDescriptor, ts::TTMLSubtitlingDescriptor, ts::TVAIdDescriptor, ts::UpdateDescriptor, ts::URILinkageDescriptor, ts::VBIDataDescriptor, ts::VideoDepthRangeDescriptor, ts::VVCSubpicturesDescriptor, ts::EacemStreamIdentifierDescriptor, ts::EutelsatChannelNumberDescriptor, ts::AreaBroadcastingInformationDescriptor, ts::AudioComponentDescriptor, ts::BasicLocalEventDescriptor, ts::BoardInformationDescriptor, ts::BroadcasterNameDescriptor, ts::CAContractInfoDescriptor, ts::CAEMMTSDescriptor, ts::CarouselCompatibleCompositeDescriptor, ts::CAServiceDescriptor, ts::ConditionalPlaybackDescriptor, ts::ContentAvailabilityDescriptor, ts::DataComponentDescriptor, ts::DataContentDescriptor, ts::DigitalCopyControlDescriptor, ts::DownloadContentDescriptor, ts::EmergencyInformationDescriptor, ts::EventGroupDescriptor, ts::ExtendedBroadcasterDescriptor, ts::HierarchicalTransmissionDescriptor, ts::HybridInformationDescriptor, ts::ISDBAccessControlDescriptor, ts::ISDBComponentGroupDescriptor, ts::ISDBConnectedTransmissionDescriptor, ts::ISDBHyperlinkDescriptor, ts::ISDBLDTLinkageDescriptor, ts::ISDBNetworkIdentifierDescriptor, ts::ISDBTargetRegionDescriptor, ts::ISDBTerrestrialDeliverySystemDescriptor, ts::LogoTransmissionDescriptor, ts::NetworkDownloadContentDescriptor, ts::NodeRelationDescriptor, ts::PartialReceptionDescriptor, ts::PartialTSTimeDescriptor, ts::ReferenceDescriptor, ts::SeriesDescriptor, ts::ServiceGroupDescriptor, ts::ShortNodeInformationDescriptor, ts::SIParameterDescriptor, ts::SIPrimeTSDescriptor, ts::STCReferenceDescriptor, ts::SystemManagementDescriptor, ts::TSInformationDescriptor, ts::VideoDecodeControlDescriptor, ts::AFExtensionsDescriptor, ts::AssociationTagDescriptor, ts::AudioStreamDescriptor, ts::AuxiliaryVideoStreamDescriptor, ts::AVCTimingAndHRDDescriptor, ts::AVCVideoDescriptor, ts::CADescriptor, ts::CarouselIdentifierDescriptor, ts::ContentLabellingDescriptor, ts::CopyrightDescriptor, ts::DataStreamAlignmentDescriptor, ts::DeferredAssociationTagsDescriptor, ts::EVCTimingAndHRDDescriptor, ts::EVCVideoDescriptor, ts::ExternalESIdDescriptor, ts::FMCDescriptor, ts::GreenExtensionDescriptor, ts::HEVCHierarchyExtensionDescriptor, ts::HEVCOperationPointDescriptor, ts::HEVCSubregionDescriptor, ts::HEVCTileSubstreamDescriptor, ts::HEVCTimingAndHRDDescriptor, ts::HEVCVideoDescriptor, ts::HierarchyDescriptor, ts::IBPDescriptor, ts::IODDescriptor, ts::ISO639LanguageDescriptor, ts::J2KVideoDescriptor, ts::JPEGXSVideoDescriptor, ts::LCEVCLinkageDescriptor, ts::LCEVCVideoDescriptor, ts::M4MuxBufferSizeDescriptor, ts::M4MuxTimingDescriptor, ts::MaximumBitrateDescriptor, ts::MediaServiceKindDescriptor, ts::MetadataDescriptor, ts::MetadataPointerDescriptor, ts::MetadataSTDDescriptor, ts::MPEG2AACAudioDescriptor, ts::MPEG2StereoscopicVideoFormatDescriptor, ts::MPEG4AudioDescriptor, ts::MPEG4AudioExtensionDescriptor, ts::MPEG4TextDescriptor, ts::MPEG4VideoDescriptor, ts::MPEGH3DAudioCommandDescriptor, ts::MPEGH3DAudioConfigDescriptor, ts::MPEGH3DAudioDescriptor, ts::MPEGH3DAudioDRCLoudnessDescriptor, ts::MPEGH3DAudioMultiStreamDescriptor, ts::MPEGH3DAudioSceneDescriptor, ts::MPEGH3DAudioTextLabelDescriptor, ts::MultiplexBufferDescriptor, ts::MultiplexBufferUtilizationDescriptor, ts::MuxCodeDescriptor, ts::MVCExtensionDescriptor, ts::MVCOperationPointDescriptor, ts::NPTEndpointDescriptor, ts::NPTReferenceDescriptor, ts::PrivateDataIndicatorDescriptor, ts::QualityExtensionDescriptor, ts::RegistrationDescriptor, ts::SLDescriptor, ts::SmoothingBufferDescriptor, ts::STDDescriptor, ts::StereoscopicProgramInfoDescriptor, ts::StereoscopicVideoInfoDescriptor, ts::StreamEventDescriptor, ts::StreamModeDescriptor, ts::SVCExtensionDescriptor, ts::SystemClockDescriptor, ts::TargetBackgroundGridDescriptor, ts::TransportProfileDescriptor, ts::VideoStreamDescriptor, ts::VideoWindowDescriptor, ts::VirtualSegmentationDescriptor, ts::VVCTimingAndHRDDescriptor, ts::VVCVideoDescriptor, ts::NorDigLogicalChannelDescriptorV1, ts::NorDigLogicalChannelDescriptorV2, ts::CueIdentifierDescriptor, ts::EASAudioFileDescriptor, ts::EASInbandDetailsChannelDescriptor, ts::EASInbandExceptionChannelsDescriptor, ts::EASMetadataDescriptor, ts::SpliceAvailDescriptor, ts::SpliceDTMFDescriptor, ts::SpliceSegmentationDescriptor, ts::SpliceTimeDescriptor, ts::SkyLogicalChannelNumberDescriptor, ts::UWAVideoStreamDescriptor, ts::SpliceInsert, ts::SpliceSchedule, ts::ATSCEIT, ts::DCCSCT, ts::DCCT, ts::ETT, ts::MGT, ts::RRT, ts::STT, ts::VCT, ts::AIT, ts::BAT, ts::CIT, ts::DiscontinuityInformationTable, ts::EIT, ts::INT, ts::NIT, ts::RCT, ts::RNT, ts::RST, ts::SAT, ts::SDT, ts::SelectionInformationTable, ts::TDT, ts::TOT, ts::UNT, ts::BIT, ts::CDT, ts::DCT, ts::DLT, ts::ERT, ts::ITT, ts::LDT, ts::LIT, ts::NBIT, ts::PCAT, ts::SDTT, ts::DSMCCStreamDescriptorsTable, ts::PAT, ts::PMT, ts::CableEmergencyAlertTable, ts::SpliceInformationTable, and ts::AbstractDescriptorsTable.
|
protectedpure virtualinherited |
Helper method to convert this object from XML.
It is called by fromXML() after checking the validity of the XML node name. In analyzeXML(), the subclass shall populate the C++ object from the content of the XML node. If analyzeXML() returns false, this table or descriptor object is then invalidated and cleared.
[in,out] | duck | TSDuck execution context. |
[in] | element | XML element to convert. |
Implemented in ts::AV1VideoDescriptor, ts::ATSCAC3AudioStreamDescriptor, ts::ATSCEAC3AudioDescriptor, ts::ATSCStuffingDescriptor, ts::ATSCTimeShiftedServiceDescriptor, ts::CaptionServiceDescriptor, ts::ComponentNameDescriptor, ts::ContentAdvisoryDescriptor, ts::DCCArrivingRequestDescriptor, ts::DCCDepartingRequestDescriptor, ts::ExtendedChannelNameDescriptor, ts::GenreDescriptor, ts::RedistributionControlDescriptor, ts::ServiceLocationDescriptor, ts::AVS2AudioDescriptor, ts::AVS3AudioDescriptor, ts::AVS3VideoDescriptor, ts::DTGGuidanceDescriptor, ts::DTGServiceAttributeDescriptor, ts::DTGShortServiceNameDescriptor, ts::AACDescriptor, ts::AbstractLogicalChannelDescriptor, ts::AbstractMultilingualDescriptor, ts::AbstractPreferredNameIdentifierDescriptor, ts::AbstractPreferredNameListDescriptor, ts::AdaptationFieldDataDescriptor, ts::AncillaryDataDescriptor, ts::AnnouncementSupportDescriptor, ts::ApplicationDescriptor, ts::ApplicationIconsDescriptor, ts::ApplicationRecordingDescriptor, ts::ApplicationSignallingDescriptor, ts::ApplicationStorageDescriptor, ts::ApplicationUsageDescriptor, ts::AudioPreselectionDescriptor, ts::BouquetNameDescriptor, ts::C2BundleDeliverySystemDescriptor, ts::C2DeliverySystemDescriptor, ts::CableDeliverySystemDescriptor, ts::CAIdentifierDescriptor, ts::CellFrequencyLinkDescriptor, ts::CellListDescriptor, ts::CIAncillaryDataDescriptor, ts::ComponentDescriptor, ts::ContentDescriptor, ts::ContentIdentifierDescriptor, ts::CountryAvailabilityDescriptor, ts::CPCMDeliverySignallingDescriptor, ts::CPDescriptor, ts::CPIdentifierDescriptor, ts::DataBroadcastDescriptor, ts::DataBroadcastIdDescriptor, ts::DefaultAuthorityDescriptor, ts::DIILocationDescriptor, ts::DSNGDescriptor, ts::DTSDescriptor, ts::DTSHDDescriptor, ts::DTSNeuralDescriptor, ts::DVBAC3Descriptor, ts::DVBAC4Descriptor, ts::DVBDTSUHDDescriptor, ts::DVBEnhancedAC3Descriptor, ts::DVBHTMLApplicationBoundaryDescriptor, ts::DVBHTMLApplicationDescriptor, ts::DVBHTMLApplicationLocationDescriptor, ts::DVBJApplicationDescriptor, ts::DVBJApplicationLocationDescriptor, ts::DVBServiceProminenceDescriptor, ts::DVBStuffingDescriptor, ts::DVBTimeShiftedServiceDescriptor, ts::ECMRepetitionRateDescriptor, ts::ExtendedEventDescriptor, ts::ExternalApplicationAuthorizationDescriptor, ts::FrequencyListDescriptor, ts::FTAContentManagementDescriptor, ts::GraphicsConstraintsDescriptor, ts::ImageIconDescriptor, ts::IPMACGenericStreamLocationDescriptor, ts::IPMACPlatformNameDescriptor, ts::IPMACPlatformProviderNameDescriptor, ts::IPMACStreamLocationDescriptor, ts::IPSignallingDescriptor, ts::ISPAccessModeDescriptor, ts::LinkageDescriptor, ts::LocalTimeOffsetDescriptor, ts::MessageDescriptor, ts::MosaicDescriptor, ts::MultilingualComponentDescriptor, ts::MultilingualServiceNameDescriptor, ts::NetworkChangeNotifyDescriptor, ts::NetworkNameDescriptor, ts::NVODReferenceDescriptor, ts::ParentalRatingDescriptor, ts::PartialTransportStreamDescriptor, ts::PDCDescriptor, ts::PrefetchDescriptor, ts::PrivateDataSpecifierDescriptor, ts::ProtectionMessageDescriptor, ts::RARoverDVBstreamDescriptor, ts::RARoverIPDescriptor, ts::RelatedContentDescriptor, ts::RNTScanDescriptor, ts::S2SatelliteDeliverySystemDescriptor, ts::S2XSatelliteDeliverySystemDescriptor, ts::S2Xv2SatelliteDeliverySystemDescriptor, ts::SatelliteDeliverySystemDescriptor, ts::SchedulingDescriptor, ts::ScramblingDescriptor, ts::ServiceAvailabilityDescriptor, ts::ServiceDescriptor, ts::ServiceIdentifierDescriptor, ts::ServiceListDescriptor, ts::ServiceMoveDescriptor, ts::ServiceRelocatedDescriptor, ts::SHDeliverySystemDescriptor, ts::ShortEventDescriptor, ts::ShortSmoothingBufferDescriptor, ts::SimpleApplicationBoundaryDescriptor, ts::SimpleApplicationLocationDescriptor, ts::SSUDataBroadcastIdDescriptor, ts::SSUEnhancedMessageDescriptor, ts::SSUEventNameDescriptor, ts::SSULinkageDescriptor, ts::SSULocationDescriptor, ts::SSUMessageDescriptor, ts::SSUSubgroupAssociationDescriptor, ts::SSUURIDescriptor, ts::StreamIdentifierDescriptor, ts::SubtitlingDescriptor, ts::SupplementaryAudioDescriptor, ts::T2DeliverySystemDescriptor, ts::T2MIDescriptor, ts::TargetIPAddressDescriptor, ts::TargetIPSlashDescriptor, ts::TargetIPSourceSlashDescriptor, ts::TargetIPv6AddressDescriptor, ts::TargetIPv6SlashDescriptor, ts::TargetIPv6SourceSlashDescriptor, ts::TargetMACAddressDescriptor, ts::TargetMACAddressRangeDescriptor, ts::TargetRegionDescriptor, ts::TargetRegionNameDescriptor, ts::TargetSerialNumberDescriptor, ts::TargetSmartcardDescriptor, ts::TelephoneDescriptor, ts::TeletextDescriptor, ts::TerrestrialDeliverySystemDescriptor, ts::TimeShiftedEventDescriptor, ts::TimeSliceFECIdentifierDescriptor, ts::TransportProtocolDescriptor, ts::TransportStreamDescriptor, ts::TTMLSubtitlingDescriptor, ts::TVAIdDescriptor, ts::UpdateDescriptor, ts::URILinkageDescriptor, ts::VBIDataDescriptor, ts::VideoDepthRangeDescriptor, ts::VVCSubpicturesDescriptor, ts::EacemStreamIdentifierDescriptor, ts::EutelsatChannelNumberDescriptor, ts::AreaBroadcastingInformationDescriptor, ts::AudioComponentDescriptor, ts::BasicLocalEventDescriptor, ts::BoardInformationDescriptor, ts::BroadcasterNameDescriptor, ts::CAContractInfoDescriptor, ts::CAEMMTSDescriptor, ts::CarouselCompatibleCompositeDescriptor, ts::CAServiceDescriptor, ts::ConditionalPlaybackDescriptor, ts::ContentAvailabilityDescriptor, ts::DataComponentDescriptor, ts::DataContentDescriptor, ts::DigitalCopyControlDescriptor, ts::DownloadContentDescriptor, ts::EmergencyInformationDescriptor, ts::EventGroupDescriptor, ts::ExtendedBroadcasterDescriptor, ts::HierarchicalTransmissionDescriptor, ts::HybridInformationDescriptor, ts::ISDBAccessControlDescriptor, ts::ISDBComponentGroupDescriptor, ts::ISDBConnectedTransmissionDescriptor, ts::ISDBHyperlinkDescriptor, ts::ISDBLDTLinkageDescriptor, ts::ISDBNetworkIdentifierDescriptor, ts::ISDBTargetRegionDescriptor, ts::ISDBTerrestrialDeliverySystemDescriptor, ts::LogoTransmissionDescriptor, ts::NetworkDownloadContentDescriptor, ts::NodeRelationDescriptor, ts::PartialReceptionDescriptor, ts::PartialTSTimeDescriptor, ts::ReferenceDescriptor, ts::SeriesDescriptor, ts::ServiceGroupDescriptor, ts::ShortNodeInformationDescriptor, ts::SIParameterDescriptor, ts::SIPrimeTSDescriptor, ts::STCReferenceDescriptor, ts::SystemManagementDescriptor, ts::TSInformationDescriptor, ts::VideoDecodeControlDescriptor, ts::AFExtensionsDescriptor, ts::AssociationTagDescriptor, ts::AudioStreamDescriptor, ts::AuxiliaryVideoStreamDescriptor, ts::AVCTimingAndHRDDescriptor, ts::AVCVideoDescriptor, ts::CADescriptor, ts::CarouselIdentifierDescriptor, ts::ContentLabellingDescriptor, ts::CopyrightDescriptor, ts::DataStreamAlignmentDescriptor, ts::DeferredAssociationTagsDescriptor, ts::EVCTimingAndHRDDescriptor, ts::EVCVideoDescriptor, ts::ExternalESIdDescriptor, ts::FMCDescriptor, ts::GreenExtensionDescriptor, ts::HEVCHierarchyExtensionDescriptor, ts::HEVCOperationPointDescriptor, ts::HEVCSubregionDescriptor, ts::HEVCTileSubstreamDescriptor, ts::HEVCTimingAndHRDDescriptor, ts::HEVCVideoDescriptor, ts::HierarchyDescriptor, ts::IBPDescriptor, ts::IODDescriptor, ts::ISO639LanguageDescriptor, ts::J2KVideoDescriptor, ts::JPEGXSVideoDescriptor, ts::LCEVCLinkageDescriptor, ts::LCEVCVideoDescriptor, ts::M4MuxBufferSizeDescriptor, ts::M4MuxTimingDescriptor, ts::MaximumBitrateDescriptor, ts::MediaServiceKindDescriptor, ts::MetadataDescriptor, ts::MetadataPointerDescriptor, ts::MetadataSTDDescriptor, ts::MPEG2AACAudioDescriptor, ts::MPEG2StereoscopicVideoFormatDescriptor, ts::MPEG4AudioDescriptor, ts::MPEG4AudioExtensionDescriptor, ts::MPEG4TextDescriptor, ts::MPEG4VideoDescriptor, ts::MPEGH3DAudioCommandDescriptor, ts::MPEGH3DAudioConfigDescriptor, ts::MPEGH3DAudioDescriptor, ts::MPEGH3DAudioDRCLoudnessDescriptor, ts::MPEGH3DAudioMultiStreamDescriptor, ts::MPEGH3DAudioSceneDescriptor, ts::MPEGH3DAudioTextLabelDescriptor, ts::MultiplexBufferDescriptor, ts::MultiplexBufferUtilizationDescriptor, ts::MuxCodeDescriptor, ts::MVCExtensionDescriptor, ts::MVCOperationPointDescriptor, ts::NPTEndpointDescriptor, ts::NPTReferenceDescriptor, ts::PrivateDataIndicatorDescriptor, ts::QualityExtensionDescriptor, ts::RegistrationDescriptor, ts::SLDescriptor, ts::SmoothingBufferDescriptor, ts::STDDescriptor, ts::StereoscopicProgramInfoDescriptor, ts::StereoscopicVideoInfoDescriptor, ts::StreamEventDescriptor, ts::StreamModeDescriptor, ts::SVCExtensionDescriptor, ts::SystemClockDescriptor, ts::TargetBackgroundGridDescriptor, ts::TransportProfileDescriptor, ts::VideoStreamDescriptor, ts::VideoWindowDescriptor, ts::VirtualSegmentationDescriptor, ts::VVCTimingAndHRDDescriptor, ts::VVCVideoDescriptor, ts::NorDigLogicalChannelDescriptorV1, ts::NorDigLogicalChannelDescriptorV2, ts::CueIdentifierDescriptor, ts::EASAudioFileDescriptor, ts::EASInbandDetailsChannelDescriptor, ts::EASInbandExceptionChannelsDescriptor, ts::EASMetadataDescriptor, ts::SpliceAvailDescriptor, ts::SpliceDTMFDescriptor, ts::SpliceSegmentationDescriptor, ts::SpliceTimeDescriptor, ts::SkyLogicalChannelNumberDescriptor, ts::UWAVideoStreamDescriptor, ts::SpliceInsert, ts::SpliceSchedule, ts::ATSCEIT, ts::DCCSCT, ts::DCCT, ts::ETT, ts::MGT, ts::RRT, ts::STT, ts::VCT, ts::AIT, ts::BAT, ts::CIT, ts::DiscontinuityInformationTable, ts::EIT, ts::INT, ts::NIT, ts::RCT, ts::RNT, ts::RST, ts::SAT, ts::SDT, ts::SelectionInformationTable, ts::TDT, ts::TOT, ts::UNT, ts::BIT, ts::CDT, ts::DCT, ts::DLT, ts::ERT, ts::ITT, ts::LDT, ts::LIT, ts::NBIT, ts::PCAT, ts::SDTT, ts::DSMCCStreamDescriptorsTable, ts::PAT, ts::PMT, ts::CableEmergencyAlertTable, ts::SpliceInformationTable, and ts::AbstractDescriptorsTable.