TSDuck v3.36-3298
MPEG Transport Stream Toolkit
Loading...
Searching...
No Matches
ts Namespace Reference

TSDuck namespace, containing all TSDuck classes and functions. More...

Namespaces

namespace  duck
 Definitions of the TSDuck internal messaging protocol.
 
namespace  ecmgscs
 Definitions of the DVB SimulCrypt ECMG <=> SCS protocol.
 
namespace  emmgmux
 Definitions of the DVB SimulCrypt EMMG <=> MUX protocol.
 
namespace  hls
 Namespace for HTTP Live Streaming (HLS) classes.
 
namespace  json
 Namespace for JSON (JavaScript Object Notation) classes.
 
namespace  names
 Namespace for functions returning Digital TV names.
 
namespace  pcsc
 PC/SC smartcard API utilities.
 
namespace  tlv
 Namespace for TLV protocols (Tag / Length / Value)
 
namespace  xml
 Namespace for XML classes.
 

Classes

class  AACDescriptor
 Representation of an AAC_descriptor. More...
 
class  AbortInterface
 An interface to check for abort. More...
 
class  AbstractAudioVideoAttributes
 Abstract base class for MPEG audio and video attributes. More...
 
class  AbstractAVCAccessUnit
 Base class for AVC access units, aka NALunits. More...
 
class  AbstractDatagramInputPlugin
 Abstract base class for input plugins receiving real-time datagrams. More...
 
class  AbstractDefinedByStandards
 Abstract base class for objects which are defined by standards. More...
 
class  AbstractDeliverySystemDescriptor
 Abstract base class for DVB delivery system descriptors. More...
 
class  AbstractDemux
 Abstract base class for all sorts of demux from TS packets. More...
 
class  AbstractDescrambler
 Abstract base class for DVB descrambler plugins. More...
 
class  AbstractDescriptor
 Abstract base class for MPEG PSI/SI descriptors. More...
 
class  AbstractDescriptorsTable
 Base class for MPEG tables containing only a list of descriptors (eg. More...
 
class  AbstractDuplicateRemapPlugin
 Abstract base class for the plugins duplicate and remap. More...
 
class  AbstractHEVCAccessUnit
 Base class for HEVC access units, aka NALunits. More...
 
class  AbstractHTTPInputPlugin
 Abstract base class for HTTP-based input plugins. More...
 
class  AbstractLogicalChannelDescriptor
 Abstract representation of a logical_channel_descriptor for different private data specifiers. More...
 
class  AbstractLongTable
 Abstract base class for MPEG PSI/SI tables with long sections. More...
 
class  AbstractMultilingualDescriptor
 Abstract base class for DVB descriptors with a multilingual name. More...
 
class  AbstractNetworkAddress
 Abstract base class for all network address and socket address classes. More...
 
class  AbstractNumber
 Abstract base class for different representations of "numbers". More...
 
class  AbstractOutputStream
 Intermediate abstract class to help implementing std::ostream. More...
 
class  AbstractPacketizer
 Abstract superclass for packetizer classes (sections or PES packets). More...
 
class  AbstractPreferredNameIdentifierDescriptor
 Abstract representation of a preferred_name_identifier_descriptor for different private data specifiers. More...
 
class  AbstractPreferredNameListDescriptor
 Abstract representation of a preferred_name_list_descriptor for different private data specifiers. More...
 
class  AbstractReadStreamInterface
 Abstract interface to read raw data from a stream. More...
 
class  AbstractSignalization
 Abstract base class for MPEG PSI/SI tables and descriptors. More...
 
class  AbstractTable
 Abstract base class for MPEG PSI/SI tables. More...
 
class  AbstractTablePlugin
 Abstract base class for plugins which process one type of table (PAT, CAT, etc.) More...
 
class  AbstractTransportListTable
 Abstract base class for tables containing a list of transport stream descriptions. More...
 
class  AbstractVideoAccessUnit
 Base class for video access units, aka NALunits. More...
 
class  AbstractVideoData
 Abstract base class for AVC data, either access units or structures. More...
 
class  AbstractVideoStructure
 Base class for sub-structures inside video access units. More...
 
class  AbstractVVCAccessUnit
 Base class for VVC (H.266) access units, aka NALunits. More...
 
class  AbstractWriteStreamInterface
 Abstract interface to write raw data on a stream. More...
 
class  AC3Attributes
 AC-3 (DD) and Enhanced-AC-3 (DD+) audio attributes. More...
 
class  AccessUnitIterator
 Iterator for common AVC/HEVC/VVC video access units. More...
 
class  AdaptationFieldDataDescriptor
 Representation of a adaptation_field_data_descriptor. More...
 
class  AES
 AES block cipher. More...
 
class  AFExtensionsDescriptor
 Representation of an MPEG-defined af_extensions_descriptor. More...
 
class  AIT
 Representation of an Application Information Table (AIT) More...
 
class  AncillaryDataDescriptor
 Representation of a ancillary_data_descriptor. More...
 
class  AnnouncementSupportDescriptor
 Representation of a announcement_support_descriptor. More...
 
class  ApplicationDescriptor
 Representation of an application_descriptor (AIT specific). More...
 
class  ApplicationIconsDescriptor
 Representation of an application_icons_descriptor (AIT specific). More...
 
struct  ApplicationIdentifier
 Representation of an Application Identifier. More...
 
class  ApplicationNameDescriptor
 Representation of an application_name_descriptor (AIT specific). More...
 
class  ApplicationRecordingDescriptor
 Representation of an application_recording_descriptor (AIT specific). More...
 
class  ApplicationSharedLibrary
 Representation of an application shared library. More...
 
class  ApplicationSignallingDescriptor
 Representation of an application_signalling_descriptor. More...
 
class  ApplicationStorageDescriptor
 Representation of an application_storage_descriptor (AIT specific). More...
 
class  ApplicationUsageDescriptor
 Representation of an application_usage_descriptor (AIT specific). More...
 
class  AreaBroadcastingInformationDescriptor
 Representation of an ISDB area_broadcasting_information_descriptor. More...
 
class  ArgMix
 Base class for elements of an argument list with mixed types. More...
 
class  ArgMixIn
 Define an element of an argument list with mixed integer and string input types. More...
 
class  ArgMixOut
 Define an element of an argument list with integer output types of mixed sizes. More...
 
class  Args
 An encapsulation of command line syntax and analysis. More...
 
class  ArgsWithPlugins
 Command line arguments for commands with plugins. More...
 
class  ARIBCharset
 Definition of the ARIB STD-B24 character set (ISDB Japan). More...
 
struct  Assign
 Assign ("=") functor. More...
 
struct  AssignAnd
 Assign with binary and ("&=") functor. More...
 
struct  AssignOr
 Assign with binary or ("|=") functor. More...
 
struct  AssignXor
 Assign with binary exclusive or ("^=") functor. More...
 
class  AssociationTagDescriptor
 Representation of an association_tag_descriptor. More...
 
class  AsyncReport
 Asynchronous message report. More...
 
class  AsyncReportArgs
 Parameters and command line arguments for asynchronous log. More...
 
class  ATSCAC3AudioStreamDescriptor
 Representation of an ATSC AC-3_audio_stream_descriptor. More...
 
class  ATSCEAC3AudioDescriptor
 Representation of an ATSC E-AC-3_audio_descriptor. More...
 
class  ATSCEIT
 Representation of an ATSC Event Information Table (ATSC EIT). More...
 
class  ATSCMultipleString
 Representation of an ATSC multiple_string_structure. More...
 
class  ATSCStuffingDescriptor
 Representation of an ATSC stuffing_descriptor. More...
 
class  ATSCTimeShiftedServiceDescriptor
 Representation of an ATSC time_shifted_service_descriptor. More...
 
class  AudioComponentDescriptor
 Representation of an ISDB audio_component_descriptor. More...
 
class  AudioLanguageOptions
 Options to update the language of an audio stream in a PMT. More...
 
class  AudioLanguageOptionsVector
 Vector of audio language options. More...
 
class  AudioPreselectionDescriptor
 Representation of an audio_preselection_descriptor. More...
 
class  AudioStreamDescriptor
 Representation of an audio_stream_descriptor. More...
 
class  AV1VideoDescriptor
 Representation of an AV1_video_descriptor. More...
 
class  AVCAccessUnitDelimiter
 Representation of an AVC access unit delimiter (AUD). More...
 
class  AVCAttributes
 Video attributes for Advanced Video Coding. More...
 
class  AVCHRDParameters
 AVC HRD (Hypothetical Reference Decoder) parameters. More...
 
class  AVCParser
 Parser for Advanced Video Coding data. More...
 
class  AVCSequenceParameterSet
 Representation of an AVC sequence parameter set access unit. More...
 
class  AVCTimingAndHRDDescriptor
 Representation of an AVC_timing_and_HRD_descriptor. More...
 
class  AVCVideoDescriptor
 Representation of an AVC_video_descriptor. More...
 
class  AVCVUIParameters
 AVC VUI (Video Usability Information) parameters. More...
 
class  AVS3VideoDescriptor
 Representation of an AVS3_video_descriptor. More...
 
class  BasicLocalEventDescriptor
 Representation of an ISDB basic_local_event_descriptor. More...
 
class  BAT
 Representation of a Bouquet Association Table (BAT). More...
 
class  BetterSystemRandomGenerator
 Improved system-provided PRNG (pseudo-random numbers generator). More...
 
class  BinaryTable
 Representation of MPEG PSI/SI tables in binary form (ie. More...
 
class  BIT
 Representation of an ISDB Broadcaster Information Table (BIT). More...
 
class  BitrateDifferenceDVBT
 A variant of DVB-T tuners parameters with an offset between a target bitrate and their theoretical bitrate. More...
 
class  BitRateRegulator
 Regulate execution speed based on a bitrate. More...
 
class  BlockCipher
 Abstract interface of block ciphers. More...
 
class  BlockCipherAlertInterface
 Interface for classes which need to be notified when an alert is raised on a block cipher. More...
 
class  BoardInformationDescriptor
 Representation of an ISDB board_information_descriptor. More...
 
class  BouquetNameDescriptor
 Representation of a bouquet_name_descriptor. More...
 
class  BroadcasterNameDescriptor
 Representation of an ISDB broadcaster_name_descriptor. More...
 
class  Buffer
 General-purpose memory buffer with bit access. More...
 
class  ByteBlock
 Definition of a generic block of bytes. More...
 
class  C2BundleDeliverySystemDescriptor
 Representation of a C2_bundle_delivery_system_descriptor. More...
 
class  C2DeliverySystemDescriptor
 Representation of a C2_delivery_system_descriptor. More...
 
class  CableDeliverySystemDescriptor
 Representation of a cable_delivery_system_descriptor. More...
 
class  CableEmergencyAlertTable
 Representation of an SCTE 18 Cable Emergency Alert Table. More...
 
class  CAContractInfoDescriptor
 Representation of an ISDB CA_contract_info_descriptor. More...
 
class  CADescriptor
 Representation of a generic CA_descriptor. More...
 
class  CAEMMTSDescriptor
 Representation of an ISDB CA_EMM_TS_descriptor. More...
 
class  CAIdentifierDescriptor
 Representation of a CA_identifier_descriptor. More...
 
class  CaptionServiceDescriptor
 Representation of an ATSC caption_service_descriptor. More...
 
class  CarouselIdentifierDescriptor
 Representation of a carousel_identifier_descriptor. More...
 
class  CASDate
 Template representation of a CAS date. More...
 
class  CAServiceDescriptor
 Representation of an ISDB CA_service_descriptor. More...
 
class  CASMapper
 This class maps PID's with CA system ids. More...
 
class  CASSelectionArgs
 Command line arguments to select Conditional Access Systems. More...
 
class  CAT
 Representation of a Conditional Access Table (CAT). More...
 
class  CBC
 Cipher Block Chaining (CBC) mode. More...
 
class  CDT
 Representation of an ISDB Common Data Table (CDT). More...
 
class  CellFrequencyLinkDescriptor
 Representation of a cell_frequency_link_descriptor. More...
 
class  CellListDescriptor
 Representation of a cell_list_descriptor. More...
 
class  CerrReport
 A singleton implementing Report on std::cerr without synchronization. More...
 
class  ChannelFile
 An XML file containing the description of TV channels and their networks. More...
 
class  Charset
 Definition of a character set for PSI/SI encoding. More...
 
class  CIAncillaryDataDescriptor
 Representation of a CI_ancillary_data_descriptor. More...
 
class  CipherChaining
 Base class of all cipher chaining modes. More...
 
class  CipherChainingTemplate
 Base class of all cipher chaining modes, template version. More...
 
class  CIT
 Representation of DVB Content Identifier Table (CIT). More...
 
class  COM
 A class to encapsulate the initialization of Windows COM. More...
 
class  CommandLine
 A basic command line interpreter. More...
 
class  CommandLineHandler
 An interface which handles a command from a CommandLine instance. More...
 
class  CompactBitSet
 A compact version of std::bitset. More...
 
class  ComponentDescriptor
 Representation of a component_descriptor. More...
 
class  ComponentNameDescriptor
 Representation of an ATSC component_name_descriptor. More...
 
class  ComPtr
 Managed pointers for COM objects, auto-released (Windows-specific). More...
 
class  Condition
 Implementation of the synchronization condition design pattern. More...
 
class  ConditionalPlaybackDescriptor
 Representation of an ISDB conditional_playback_descriptor. More...
 
class  ConfigFile
 Representation of a configuration file. More...
 
class  ConfigSection
 Representation of a "configuration section". More...
 
class  ConsoleState
 A class to save and restore the state of the Windows console. More...
 
class  ContentAdvisoryDescriptor
 Representation of an ATSC content_advisory_descriptor. More...
 
class  ContentAvailabilityDescriptor
 Representation of an ISDB content_availability_descriptor. More...
 
class  ContentDescriptor
 Representation of a content_descriptor. More...
 
class  ContentIdentifierDescriptor
 Representation of a DVB-defined content_identifier_descriptor. More...
 
class  ContentLabellingDescriptor
 Representation of an MPEG-defined content_labelling_descriptor. More...
 
class  ContinuityAnalyzer
 Continuity counters analysis and repair. More...
 
class  CopyrightDescriptor
 Representation of an copyright_descriptor. More...
 
class  CountryAvailabilityDescriptor
 Representation of a country_availability_descriptor. More...
 
class  CPCMDeliverySignallingDescriptor
 Representation of a DVB cpcm_delivery_signalling_descriptor. More...
 
class  CPDescriptor
 Representation of a CP_descriptor. More...
 
class  CPIdentifierDescriptor
 Representation of a CP_identifier_descriptor. More...
 
class  CRC32
 Cyclic Redundancy Check as used in MPEG sections. More...
 
class  CTR
 Counter (CTR) chaining mode. More...
 
class  CTS1
 Cipher text Stealing (CTS) mode, alternative 1. More...
 
class  CTS2
 Cipher text Stealing (CTS) mode, alternative 2. More...
 
class  CTS3
 Cipher text Stealing (CTS) mode, alternative 3. More...
 
class  CTS4
 Cipher text Stealing (CTS) mode, alternative 4. More...
 
class  CueIdentifierDescriptor
 Representation of a cue_identifier_descriptor (SCTE 35). More...
 
class  CVCT
 Representation of an ATSC Cable Virtual Channel Table (CVCT) More...
 
class  CyclingPacketizer
 Cyclic packetization of MPEG sections into Transport Stream packets. More...
 
class  DataBroadcastDescriptor
 Representation of a data_broadcast_descriptor. More...
 
class  DataBroadcastIdDescriptor
 Representation of a generic data_broadcast_id_descriptor. More...
 
class  DataComponentDescriptor
 Representation of an ISDB data_component_descriptor. More...
 
class  DataContentDescriptor
 Representation of an ISDB data_content_descriptor. More...
 
class  DataStreamAlignmentDescriptor
 Representation of a data_stream_alignment_descriptor. More...
 
class  DCCArrivingRequestDescriptor
 Representation of an ATSC dcc_arriving_request_descriptor. More...
 
class  DCCDepartingRequestDescriptor
 Representation of an ATSC dcc_departing_request_descriptor. More...
 
class  DCCSCT
 Representation of an ATSC Directed Channel Change Selection Code Table (DCCSCT). More...
 
class  DCCT
 Representation of an ATSC Directed Channel Change Table (DCCT). More...
 
class  DebugPlugin
 Debug packet processor plugin for tsp. More...
 
class  DeferredAssociationTagsDescriptor
 Representation of a deferred_association_tags_descriptor. More...
 
class  DektecControl
 A class implementing the tsdektec control utility. More...
 
class  DektecDeviceInfo
 A simple encapsulation of Dektec device information. More...
 
class  DektecInputPlugin
 Dektec input plugin for tsp. More...
 
class  DektecOutputPlugin
 Dektec output plugin for tsp. More...
 
class  DeliverySystemSet
 A set of delivery system values (ts::DeliverySystem). More...
 
class  DemuxedData
 Base class for all kinds of demuxed data. More...
 
class  DES
 DES block cipher. More...
 
class  Descriptor
 Representation of a MPEG PSI/SI descriptors in binary format. More...
 
class  DescriptorList
 List of MPEG PSI/SI descriptors. More...
 
class  DigitalCopyControlDescriptor
 Representation of an ISDB digital_copy_control_descriptor. More...
 
class  DIILocationDescriptor
 Representation of a DII_location_descriptor (AIT specific). More...
 
class  DirectShowFilterCategory
 A class which instanciates all DirectShow devices in a given category (Windows-specific). More...
 
class  DirectShowGraph
 An encapsulation of a DirectShow graph (Windows-specific). More...
 
class  DirectShowNetworkType
 A class which encapsulates a DirectShow network type and its properties (Windows-specific). More...
 
class  DirectShowTest
 A class to perform various tests on DirectShow and BDA (Windows-specific). More...
 
class  DiscontinuityInformationTable
 Representation of a Discontinuity Information Table (DIT) More...
 
class  DisplayInterface
 An interface to be implemented by classes supporting display to a standard text stream. More...
 
class  DropOutputPlugin
 Drop output plugin for tsp. More...
 
class  DSMCCStreamDescriptorsTable
 Representation of a DSM-CC Stream Descriptors table. More...
 
class  DSNGDescriptor
 Representation of a DSNG_descriptor. More...
 
class  DTGGuidanceDescriptor
 Representation of a DTG guidance_descriptor. More...
 
class  DTGHDSimulcastLogicalChannelDescriptor
 Representation of a DTG HD_simulcast_logical_channel_descriptor. More...
 
class  DTGLogicalChannelDescriptor
 Representation of a DTG logical_channel_descriptor. More...
 
class  DTGPreferredNameIdentifierDescriptor
 Representation of a DTG preferred_name_identifier_descriptor. More...
 
class  DTGPreferredNameListDescriptor
 Representation of a DTG preferred_name_list_descriptor. More...
 
class  DTGServiceAttributeDescriptor
 Representation of a DTG service_attribute_descriptor. More...
 
class  DTGShortServiceNameDescriptor
 Representation of a DTG short_service_name_descriptor. More...
 
class  DTSDescriptor
 Representation of a DTS_descriptor. More...
 
class  DTSHDDescriptor
 Representation of a DTS_HD_descriptor. More...
 
class  DTSNeuralDescriptor
 Representation of a DTS_neural_descriptor. More...
 
class  DTVProperties
 Encapsulation of Linux DVB property lists. More...
 
class  DuckConfigFile
 A singleton which contains the TSDuck configuration file. More...
 
class  DuckContext
 TSDuck execution context containing current preferences. More...
 
class  DuckExtensionRepository
 A repository of TSDuck extensions. More...
 
class  DumpCharset
 Definition of the fake character set to dump string binary data. More...
 
class  DVBAC3Descriptor
 Representation of a DVB AC-3_descriptor. More...
 
class  DVBAC4Descriptor
 Representation of a DVB AC-4_descriptor. More...
 
class  DVBCharset
 Definition of the generic DVB character sets. More...
 
class  DVBCharTable
 Definition of a character set for DVB encoding. More...
 
class  DVBCharTableSingleByte
 Definition of a DVB character set using a single byte per character. More...
 
class  DVBCharTableUTF16
 Definition of the UTF-8 DVB character set. More...
 
class  DVBCharTableUTF8
 Definition of the UTF-8 DVB character set. More...
 
class  DVBCISSA
 DVB-CISSA AES-based TS packet encryption. More...
 
class  DVBCSA2
 DVB CSA-2 (Digital Video Broadcasting Common Scrambling Algorithm). More...
 
class  DVBDTSUHDDescriptor
 Representation of a DVB DTS-UHD descriptor. More...
 
class  DVBEnhancedAC3Descriptor
 Representation of a DVB enhanced_AC-3_descriptor. More...
 
class  DVBHTMLApplicationBoundaryDescriptor
 Representation of a dvb_html_application_boundary_descriptor (AIT specific). More...
 
class  DVBHTMLApplicationDescriptor
 Representation of a dvb_html_application_descriptor (AIT specific). More...
 
class  DVBHTMLApplicationLocationDescriptor
 Representation of a dvb_html_application_location_descriptor (AIT specific). More...
 
class  DVBJApplicationDescriptor
 Representation of a dvb_j_application_descriptor (AIT specific). More...
 
class  DVBJApplicationLocationDescriptor
 Representation of a dvb_j_application_location_descriptor (AIT specific). More...
 
class  DVBServiceProminenceDescriptor
 Representation of a DVB service_prominence_descriptor. More...
 
class  DVBStuffingDescriptor
 Representation of a DVB stuffing_descriptor. More...
 
class  DVBTimeShiftedServiceDescriptor
 Representation of a DVB time_shifted_service_descriptor. More...
 
class  DVS042
 DVS 042 cipher block chaining mode. More...
 
class  EacemHDSimulcastLogicalChannelDescriptor
 Representation of an EACEM-defined HD_simulcast_logical_channel_descriptor. More...
 
class  EacemLogicalChannelNumberDescriptor
 Representation of an EACEM-defined logical_channel_number_descriptor. More...
 
class  EacemPreferredNameIdentifierDescriptor
 Representation of an eacem_preferred_name_identifier_descriptor. More...
 
class  EacemPreferredNameListDescriptor
 Representation of an eacem_preferred_name_list_descriptor. More...
 
class  EacemStreamIdentifierDescriptor
 Representation of an eacem_stream_identifier_descriptor. More...
 
class  EASAudioFileDescriptor
 Representation of an SCTE 18 EAS_audio_file_descriptor (specific to a Cable Emergency Alert Table). More...
 
class  EASInbandDetailsChannelDescriptor
 Representation of an SCTE 18 EAS_inband_details_channel_descriptor (specific to a Cable Emergency Alert Table). More...
 
class  EASInbandExceptionChannelsDescriptor
 Representation of an SCTE 18 EAS_inband_exception_channels_descriptor (specific to a Cable Emergency Alert Table). More...
 
class  EASMetadataDescriptor
 Representation of an SCTE 164 EAS_metadata_descriptor (specific to a Cable Emergency Alert Table). More...
 
class  ECB
 Electronic Code Book (ECB) mode. More...
 
class  ECMGClient
 A DVB-ECMG client which acts as a DVB-SCS. More...
 
class  ECMGClientArgs
 Command line arguments for the class ECMGClient. More...
 
class  ECMGClientHandlerInterface
 Interface for classes which need to be notified of asynchronous ECM generation using ECMGClient. More...
 
class  ECMRepetitionRateDescriptor
 Representation of an ECM_repetition_rate_descriptor. More...
 
class  EDID
 Extended MPEG descriptor id. More...
 
class  EditLine
 Read input lines with bash-like line editing when possible. More...
 
class  EIT
 Representation of a DVB Event Information Table (EIT). More...
 
class  EITGenerator
 Generate and insert EIT sections based on an EPG content. More...
 
class  EITProcessor
 Perform various transformations on an EIT PID. More...
 
class  EITRepetitionProfile
 EIT sections repetition profile. More...
 
class  EmergencyInformationDescriptor
 Representation of an ISDB emergency_information_descriptor. More...
 
class  EMMGClient
 A DVB-EMMG client which connects to any MUX to inject data. More...
 
struct  EnableBitMaskOperators
 This traits is used to enable bitmask operators on an enumeration type. More...
 
struct  EnableBitMaskOperators< ts::EITOptions >
 Template specialization on type ts::EITOptions
More...
 
struct  EnableBitMaskOperators< ts::NamesFlags >
 Template specialization on type ts::NamesFlags
More...
 
struct  EnableBitMaskOperators< ts::PSIMerger::Options >
 Template specialization on type ts::PSIMerger::Options
More...
 
struct  EnableBitMaskOperators< ts::ResolveSymbolicLinksFlags >
 Template specialization on type ts::ResolveSymbolicLinksFlags
More...
 
struct  EnableBitMaskOperators< ts::SRTStatMode >
 Template specialization on type ts::SRTStatMode
More...
 
struct  EnableBitMaskOperators< ts::Standards >
 Template specialization on type ts::Standards
More...
 
struct  EnableBitMaskOperators< ts::TSDatagramOutputOptions >
 Template specialization on type ts::TSDatagramOutputOptions
More...
 
struct  EnableBitMaskOperators< ts::TSFile::OpenFlags >
 Template specialization on type ts::TSFile::OpenFlags
More...
 
class  Enumeration
 Enumeration of int/string pairs. More...
 
class  ERT
 Representation of an ISDB Event Relation Table (ERT). More...
 
class  ETID
 Extended MPEG table id. More...
 
class  ETT
 Representation of an ATSC Extended Text Table (ETT) More...
 
class  EutelsatChannelNumberDescriptor
 Representation of an Eutelsat_channel_number_descriptor. More...
 
class  EVCTimingAndHRDDescriptor
 Representation of an VVC_timing_and_HRD_descriptor. More...
 
class  EVCVideoDescriptor
 Representation of an HEVC_video_descriptor. More...
 
class  EventGroupDescriptor
 Representation of an ISDB event_group_descriptor. More...
 
class  Exception
 Base class for all exceptions in TSDuck. More...
 
class  ExtendedBroadcasterDescriptor
 Representation of an ISDB extended_broadcaster_descriptor. More...
 
class  ExtendedChannelNameDescriptor
 Representation of an ATSC extended_channel_name_descriptor. More...
 
class  ExtendedEventDescriptor
 Representation of a extended_event_descriptor. More...
 
class  ExternalApplicationAuthorizationDescriptor
 Representation of an external_application_authorization_descriptor (AIT specific). More...
 
class  ExternalESIdDescriptor
 Representation of an external_ES_ID_descriptor. More...
 
class  FileInputPlugin
 File input plugin for tsp. More...
 
class  FileNameGenerator
 Generate file names based on counter or dates and time. More...
 
class  FileNameRate
 Representation of a file name and an associated repetition rate. More...
 
class  FileNameRateList
 Specialized list of file names and an associated repetition rates. More...
 
class  FileOutputPlugin
 File output plugin for tsp. More...
 
class  FilePacketPlugin
 File packet processor plugin for tsp. More...
 
class  FixedPoint
 Template representation of fixed-precision numbers. More...
 
class  FlexMuxTimingDescriptor
 Representation of a flexmux_timing_descriptor. More...
 
class  FloatingPoint
 Encapsulation of a double floating-point as an AbstractNumber. More...
 
class  FMCDescriptor
 Representation of a FMC_descriptor. More...
 
class  FmxBufferSizeDescriptor
 Representation of an MuxCode descriptor. More...
 
class  ForkInputPlugin
 File input plugin for tsp. More...
 
class  ForkOutputPlugin
 File output plugin for tsp. More...
 
class  ForkPacketPlugin
 File packet processor plugin for tsp. More...
 
class  ForkPipe
 Fork a process and create an optional pipe to its standard input. More...
 
class  Fraction
 Template representation of fractional numbers. More...
 
class  FrequencyListDescriptor
 Representation of a frequency_list_descriptor. More...
 
class  FTAContentManagementDescriptor
 Representation of a FTA_content_management_descriptor. More...
 
class  GenreDescriptor
 Representation of an ATSC genre_descriptor. More...
 
class  GitHubRelease
 This class holds information from GitHub about a release of a project. More...
 
class  GraphicsConstraintsDescriptor
 Representation of a graphics_constraints_descriptor (AIT specific). More...
 
class  GreenExtensionDescriptor
 Representation of an MPEG-defined green_extension_descriptor. More...
 
class  Grid
 This class produces a report in a grid format with tables and sections. More...
 
class  GuardCondition
 Automatic guard class for synchronization condition (ts::Condition). More...
 
class  GuardMutex
 Automatic guard class for mutex (ts::MutexInterface). More...
 
class  Hash
 Abstract interface of hash functions. More...
 
class  HEVCAccessUnitDelimiter
 Representation of an HEVC access unit delimiter (AUD). More...
 
class  HEVCAttributes
 Video attributes for HEVC / H.265. More...
 
class  HEVCHierarchyExtensionDescriptor
 Representation of an MPEG-defined HEVC_hierarchy_extension_descriptor. More...
 
class  HEVCHRDParameters
 HEVC HRD (Hypothetical Reference Decoder) parameters. More...
 
class  HEVCOperationPointDescriptor
 Representation of an Auxiliary_video_stream_descriptor. More...
 
class  HEVCProfileTierLevel
 HEVC profile, tier and level structure. More...
 
class  HEVCScalingListData
 HEVC scaling list data structure. More...
 
class  HEVCSequenceParameterSet
 Representation of an HEVC sequence parameter set access unit. More...
 
class  HEVCShortTermReferencePictureSetList
 List of HEVC short-term reference picture sets. More...
 
class  HEVCSubregionDescriptor
 Representation of an HEVC_subregion_descriptor. More...
 
class  HEVCTileSubstreamDescriptor
 Representation of an HEVC_tile_substream_descriptor. More...
 
class  HEVCTimingAndHRDDescriptor
 Representation of an HEVC_timing_and_HRD_descriptor. More...
 
class  HEVCVideoDescriptor
 Representation of an HEVC_video_descriptor. More...
 
class  HEVCVUIParameters
 HEVC VUI (Video Usability Information) parameters. More...
 
class  HFBand
 Definition of an HF frequency band (UHF, VHF). More...
 
class  HiDesDevice
 Encapsulation of a HiDes modulator device. More...
 
class  HiDesDeviceInfo
 Information about a HiDes modulator device. More...
 
class  HierarchicalTransmissionDescriptor
 Representation of an ISDB hierarchical_transmission_descriptor. More...
 
class  HierarchyDescriptor
 Representation of a hierarchy_descriptor. More...
 
class  HTTPInputPlugin
 HTTP input plugin for tsp. More...
 
class  HybridInformationDescriptor
 Representation of an ISDB hybrid_information_descriptor. More...
 
class  IBPDescriptor
 Representation of a IBP_descriptor. More...
 
class  IDSA
 ATIS-0800006 AES-based TS packet encryption (ATIS-IDSA). More...
 
struct  ieee_float
 Definition of an IEEE floating point type with a given represenation. More...
 
class  ImageIconDescriptor
 Representation of a image_icon_descriptor. More...
 
class  ImplementationError
 Implementation error. More...
 
class  InputPlugin
 Input tsp plugin interface. More...
 
class  InputRedirector
 A class to redirect an input stream. More...
 
class  InputSwitcher
 Implementation of the input plugin switcher. More...
 
class  InputSwitcherArgs
 Transport stream input switcher command-line options. More...
 
class  INT
 Representation of an IP/MAC Notification Table (INT). More...
 
class  Integer
 Encapsulation of an integer type as an AbstractNumber. More...
 
class  InterruptHandler
 An interface to be implemented by a class to handle user Ctrl-C interrupt. More...
 
class  InvalidSectionHandlerInterface
 Abstract interface to receive an invalid MPEG section from a SectionDemux. More...
 
class  InvalidValue
 Exception for generic invalid value error. More...
 
class  IOManipulatorProxy
 I/O manipulator with argument for subclasses of std::basic_ostream. More...
 
class  IPInputPlugin
 IP input plugin for tsp. More...
 
class  IPMACGenericStreamLocationDescriptor
 Representation of an IP/MAC_generic_stream_location_descriptor (INT specific). More...
 
class  IPMACPlatformNameDescriptor
 Representation of an IP/MAC_platform_name_descriptor (INT specific). More...
 
class  IPMACPlatformProviderNameDescriptor
 Representation of an IP/MAC_platform_provider_name_descriptor (INT specific). More...
 
class  IPMACStreamLocationDescriptor
 Representation of an IP/MAC_stream_location_descriptor (INT specific). More...
 
class  IPOutputPlugin
 IP output plugin for tsp. More...
 
class  IPPacketPlugin
 IP output plugin for tsp. More...
 
class  IPSignallingDescriptor
 Representation of an ip_signalling_descriptor (AIT specific). More...
 
class  IPv4Address
 A basic representation of an IP v4 address. More...
 
class  IPv4AddressMask
 A combination of IP v4 address and network mask. More...
 
class  IPv4Packet
 Representation of a raw IPv4 packet. More...
 
class  IPv4SocketAddress
 Socket address class (IP v4 address & port). More...
 
class  IPv6Address
 A basic representation of an IPv6 address. More...
 
class  IPv6SocketAddress
 IP v6 socket address class (IP v6 address & port). More...
 
class  ISDBAccessControlDescriptor
 Representation of an ISDB access_control_descriptor. More...
 
class  ISDBTerrestrialDeliverySystemDescriptor
 Representation of an ISDB terrestrial_delivery_system_descriptor. More...
 
class  ISO639LanguageDescriptor
 Representation of an ISO_639_language_descriptor. More...
 
class  ISPAccessModeDescriptor
 Representation of an ISP_access_mode_descriptor (INT specific). More...
 
class  ITT
 Representation of an ISDB Index Transmission information Table (ITT). More...
 
class  J2KVideoDescriptor
 Representation of a J2K_video_descriptor. More...
 
class  KeyTable
 Definition of a basic and non-secure implementation of a symmetric key table. More...
 
class  LatencyMonitor
 Implementation of the latency monitor This class is used by the tslatencymonitor utility. More...
 
class  LatencyMonitorArgs
 Transport stream latency monitor command-line options. More...
 
class  LCEVCLinkageDescriptor
 Representation of an HEVC_video_descriptor. More...
 
class  LCEVCVideoDescriptor
 Representation of an HEVC_video_descriptor. More...
 
class  LDT
 Representation of an ISDB Linked Description Table (LDT). More...
 
class  LinkageDescriptor
 Representation of a generic linkage_descriptor. More...
 
class  LIT
 Representation of an ISDB Local event Information Table (LIT). More...
 
class  LNB
 Description of a Low-Noise Block (LNB) converter in a satellite dish. More...
 
class  LocalTimeOffsetDescriptor
 Representation of a local_time_offset_descriptor. More...
 
class  LogicalChannelNumbers
 A multi-standard storage of Logical Channel Numbers (LCN). More...
 
class  LogoTransmissionDescriptor
 Representation of an ISDB logo_transmission_descriptor. More...
 
class  MACAddress
 A basic representation of a MAC address. More...
 
class  MacPList
 This class implements a macOS XML PList file. More...
 
struct  make_signed
 The meta-type ts::make_signed is a generalization of std::make_signed which works on floating point-types as well. More...
 
class  MaximumBitrateDescriptor
 Representation of a maximum_bitrate_descriptor. More...
 
class  MediaServiceKindDescriptor
 Representation of an Media_service_kind_descriptor. More...
 
class  MemoryInputPlugin
 Memory input plugin for tsp. More...
 
class  MemoryOutputPlugin
 Memory output plugin for tsp. More...
 
class  MessageDescriptor
 Representation of a message_descriptor. More...
 
class  MessagePriorityQueue
 Template message queue for inter-thread communication with priority. More...
 
class  MessageQueue
 Template message queue for inter-thread communication. More...
 
class  MetadataDescriptor
 Representation of an MPEG-defined metadata_descriptor. More...
 
class  MetadataPointerDescriptor
 Representation of an MPEG-defined metadata_pointer_descriptor. More...
 
class  MetadataSTDDescriptor
 Representation of a metadata_STD_descriptor. More...
 
class  MGT
 Representation of an ATSC Master Guide Table (MGT) More...
 
class  ModulationArgs
 Modulation parameters for tuners and their command-line definitions. More...
 
class  Monotonic
 Basic monotonic clock & timer. More...
 
class  MosaicDescriptor
 Representation of a mosaic_descriptor. More...
 
class  MPEDemux
 This class extracts MPE (Multi-Protocol Encapsulation) datagrams from TS packets. More...
 
class  MPEG2AACAudioDescriptor
 Representation of an MPEG2_AAC_audio_descriptor. More...
 
class  MPEG2AudioAttributes
 Audio attributes for MPEG-1 / MPEG-2 audio. More...
 
class  MPEG2StereoscopicVideoFormatDescriptor
 Representation of an MPEG2_stereoscopic_video_format_descriptor. More...
 
class  MPEG2VideoAttributes
 Video attributes for MPEG-1 and MPEG-2. More...
 
class  MPEG4AudioDescriptor
 Representation of an MPEG4_audio_descriptor. More...
 
class  MPEG4TextDescriptor
 Representation of an MPEG-4 Text Descriptor. More...
 
class  MPEG4VideoDescriptor
 Representation of an MPEG4_video_descriptor. More...
 
class  MPEGH3DAudioDescriptor
 Representation of an MPEG-defined MPEGH_3D_audio_descriptor. More...
 
class  MPEGH3DAudioMultiStreamDescriptor
 Representation of an MPEG-defined MPEGH_3D_audio_multi_stream_descriptor. More...
 
class  MPEGH3DAudioTextLabelDescriptor
 Representation of an MPEG-H_3dAudio_descriptor. More...
 
class  MPEHandlerInterface
 MPE (Multi-Protocol Encapsulation) demux handler interface. More...
 
class  MPEPacket
 Representation of a packet for MPE (Multi-Protocol Encapsulation). More...
 
class  MultilingualBouquetNameDescriptor
 Representation of a multilingual_bouquet_name_descriptor. More...
 
class  MultilingualComponentDescriptor
 Representation of a multilingual_component_descriptor. More...
 
class  MultilingualNetworkNameDescriptor
 Representation of a multilingual_network_name_descriptor. More...
 
class  MultilingualServiceNameDescriptor
 Representation of a multilingual_service_name_descriptor. More...
 
class  MultiplexBufferDescriptor
 Representation of a multiplex_buffer_descriptor. More...
 
class  MultiplexBufferUtilizationDescriptor
 Representation of an multiplex_buffer_utilization_descriptor. More...
 
class  Mutex
 A mutex implementation which is compatible with the ts::Thread class. More...
 
class  MutexInterface
 Interface class for mutex objects. More...
 
class  MuxCodeDescriptor
 Representation of an MuxCode descriptor. More...
 
class  Muxer
 Implementation of the TS multiplexer. More...
 
class  MuxerArgs
 Transport stream multiplexer command-line options. More...
 
class  MVCExtensionDescriptor
 Representation of an MVC_extension_descriptor. More...
 
class  MVCOperationPointDescriptor
 Representation of an MVC_operation_point_descriptor. More...
 
class  NamesFile
 Representation of a ".names" file, containing names for identifiers. More...
 
class  NBIT
 Representation of an ISDB Network Board Information Table (NBIT). More...
 
class  NetworkChangeNotifyDescriptor
 Representation of a network_change_notify_descriptor. More...
 
class  NetworkNameDescriptor
 Representation of a network_name_descriptor. More...
 
class  NIT
 Representation of a Network Information Table (NIT) More...
 
class  NodeRelationDescriptor
 Representation of an ISDB node_relation_descriptor. More...
 
class  NorDigLogicalChannelDescriptorV1
 Representation of a NorDig logical_channel_descriptor (V1). More...
 
class  NorDigLogicalChannelDescriptorV2
 Representation of a NorDig logical_channel_descriptor (V2). More...
 
class  NPTEndpointDescriptor
 Representation of a DSM-CC NPT_endpoint_descriptor. More...
 
class  NPTReferenceDescriptor
 Representation of a DSM-CC NPT_reference_descriptor. More...
 
class  NullInputPlugin
 Null packet input plugin for tsp. More...
 
class  NullMutex
 Empty mutex implementation. More...
 
class  NullReport
 A singleton implementing Report which drops all messages. More...
 
class  NVODReferenceDescriptor
 Representation of a NVOD_reference_descriptor. More...
 
class  Object
 General-purpose base class for polymophic objects. More...
 
class  ObjectRepository
 A global repository of general-purpose base class for polymophic objects. More...
 
class  OneShotPacketizer
 Packetization of MPEG sections into Transport Stream packets in one shot. More...
 
class  OutputPager
 Send application output to a "pager" application such as "more" or "less". More...
 
class  OutputPlugin
 Output tsp plugin interface. More...
 
class  OutputRedirector
 A class to redirect an output stream. More...
 
class  PacketDecapsulation
 An efficient TSDuck-specific TS packets decapsulation from a PID. More...
 
class  PacketEncapsulation
 An efficient TSDuck-specific TS packets encapsulation in a PID. More...
 
class  PacketInsertionController
 Control the insertion points of TS packets in a stream based on various criteria. More...
 
class  Packetizer
 Packetization of MPEG sections into Transport Stream packets. More...
 
class  PagerArgs
 Command line arguments for --pager or --no-pager. More...
 
class  ParentalRatingDescriptor
 Representation of an parental_rating_descriptor. More...
 
class  PartialReceptionDescriptor
 Representation of an ISDB partial_reception_descriptor. More...
 
class  PartialTransportStreamDescriptor
 Representation of a partial_transport_stream_descriptor. More...
 
class  PAT
 Representation of a Program Association Table (PAT). More...
 
class  PcapFile
 Read a pcap or pcapng capture file format. More...
 
class  PcapFilter
 Read a pcap or pcapng file with packet filtering. More...
 
class  PcapStream
 Read a TCP/IP session from a pcap or pcapng file. More...
 
class  PCAT
 Representation of an ISDB Partial Content Announcement Table (PCAT). More...
 
class  PCRAnalyzer
 PCR statistics analysis. More...
 
class  PCRMerger
 Adjust PCR clocks when a TS is merged into a larger one. More...
 
class  PCRRegulator
 Regulate execution speed based on PCR's in one reference PID. More...
 
class  PDCDescriptor
 Representation of a PDC_descriptor. More...
 
class  PESDemux
 This class extracts PES packets from TS packets. More...
 
class  PESHandlerInterface
 Abstract interface to be notified of PES packets using a PESDemux. More...
 
class  PESOneShotPacketizer
 Packetization of PES data into Transport Stream packets in one shot. More...
 
class  PESPacket
 Representation of MPEG PES packets. More...
 
class  PESPacketizer
 Packetization of PES data into Transport Stream packets. More...
 
class  PESProviderInterface
 Abstract interface for classes which provide PES packets into a Packetizer. More...
 
class  PESStreamPacketizer
 Packetization of PES data into Transport Stream packets in "push" mode. More...
 
struct  PIDOperator
 Association of a PID and an operator id (CAS-specific). More...
 
class  PIDOperatorSet
 Specialized set of PIDOperator. More...
 
class  Plugin
 Base class of all tsp plugins. More...
 
class  PluginEventContext
 Context of a plugin event. More...
 
class  PluginEventData
 General-purpose plugin event data referencing binary data to exchange with applications. More...
 
class  PluginEventHandlerInterface
 Abstract interface to receive events from a plugin. More...
 
class  PluginEventHandlerRegistry
 Registry of plugin event handlers. More...
 
class  PluginOptions
 Command-line options for one plugin. More...
 
class  PluginRepository
 A repository of TSP plugins, either statically or dynamically linked. More...
 
class  PluginThread
 Base class for threads executing a tsp plugin. More...
 
class  PMT
 Representation of a Program Map Table (PMT). More...
 
class  PolledFile
 Description of a polled file. More...
 
class  PollFiles
 A class to poll files for modifications. More...
 
class  PollFilesListener
 Interface for classes listening for file modification. More...
 
class  PrefetchDescriptor
 Representation of a prefetch_descriptor (AIT specific). More...
 
class  PrivateDataIndicatorDescriptor
 Representation of a private_data_indicator_descriptor. More...
 
class  PrivateDataSpecifierDescriptor
 Representation of a private_data_specifier_descriptor. More...
 
struct  ProcessMetrics
 This structure contains metrics about a process. More...
 
class  ProcessorPlugin
 Packet processing tsp plugin interface. More...
 
class  ProtectionMessageDescriptor
 Representation of a protection_message_descriptor. More...
 
class  PSIBuffer
 A specialized subclass of ts::Buffer for PSI serialization. More...
 
class  PSILogger
 This class logs sections and tables. More...
 
class  PSIMerger
 This class merges PSI/SI tables from two TS, replacing TS packets. More...
 
class  PSIPlugin
 Display PSI/SI information plugin for tsp. More...
 
class  PSIRepository
 A repository for known PSI/SI tables and descriptors. More...
 
class  PushInputPlugin
 Abstract superclass for input tsp plugins working in push mode. More...
 
class  QualityExtensionDescriptor
 Representation of an MPEG-defined HEVC_hierarchy_extension_descriptor. More...
 
class  RandomGenerator
 Abstract base class for PRNG's (pseudo-random numbers generators). More...
 
class  RedistributionControlDescriptor
 Representation of an ATSC redistribution_control_descriptor. More...
 
class  ReferenceDescriptor
 Representation of an ISDB reference_descriptor. More...
 
class  RegistrationDescriptor
 Representation of a registration_descriptor. More...
 
class  Registry
 A class to encapsulate the access to the Windows registry. More...
 
class  RelatedContentDescriptor
 Representation of a DVB-defined related_content_descriptor. More...
 
class  Report
 Abstract interface for event reporting and monitoring. More...
 
class  ReportBuffer
 A subclass of ts::Report which logs all messages in an internal buffer. More...
 
class  ReportFile
 A subclass of ts::Report which outputs messages in a text file. More...
 
class  ReportWithPrefix
 An encapsulation of Report with a message prefix. More...
 
class  ResidentBuffer
 Implementation of memory buffer locked in physical memory. More...
 
class  RingNode
 Base class for objects being part of a ring, ie. More...
 
class  RISTInputPlugin
 Reliable Internet Stream Transport (RIST) input plugin for tsp. More...
 
class  RISTOutputPlugin
 Reliable Internet Stream Transport (RIST) output plugin for tsp. More...
 
class  RNT
 Representation of a DVB Resolution provider Notification Table (RNT). More...
 
class  RRT
 Representation of an ATSC Rating Region Table (RRT). More...
 
class  RST
 Representation of a Running Status Table (RST). More...
 
class  S2SatelliteDeliverySystemDescriptor
 Representation of an S2_satellite_delivery_system_descriptor. More...
 
class  S2XSatelliteDeliverySystemDescriptor
 Representation of an S2X_satellite_delivery_system_descriptor. More...
 
class  S2Xv2SatelliteDeliverySystemDescriptor
 Representation of an S2Xv2_satellite_delivery_system_descriptor. More...
 
class  SafePtr
 Template safe pointer (reference-counted, auto-delete, thread-safe). More...
 
class  SAT
 Representation of a Satellite Access Table (SAT). More...
 
class  SatelliteDeliverySystemDescriptor
 Representation of a satellite_delivery_system_descriptor. More...
 
class  SchedulingDescriptor
 Representation of an scheduling_descriptor (UNT specific). More...
 
class  ScramblingDescriptor
 Representation of a scrambling_descriptor. More...
 
class  SCTE52_2003
 ANSI/SCTE 52 2003 DES-based TS packet encryption. More...
 
class  SCTE52_2008
 ANSI/SCTE 52 2008 DES-based TS packet encryption. More...
 
class  SDT
 Representation of a Service Description Table (SDT). More...
 
class  Section
 Representation of MPEG PSI/SI sections. More...
 
class  SectionDemux
 This class rebuilds MPEG tables and sections from TS packets. More...
 
class  SectionFile
 A binary or XML file containing PSI/SI sections and tables. More...
 
class  SectionFileArgs
 Command line arguments for section file processing. More...
 
class  SectionHandlerInterface
 Abstract interface to receive MPEG Section from a SectionDemux. More...
 
class  SectionProviderInterface
 Abstract interface for classes which provide MPEG sections into a Packetizer. More...
 
class  SelectionInformationTable
 Representation of a Selection Information Table. More...
 
class  SeriesDescriptor
 Representation of an ISDB series_descriptor. More...
 
class  Service
 Describe a DVB or ATSC service. More...
 
class  ServiceAvailabilityDescriptor
 Representation of a service_availability_descriptor. More...
 
class  ServiceDescriptor
 Representation of a service_descriptor. More...
 
class  ServiceDiscovery
 Discover and describe a DVB service. More...
 
class  ServiceGroupDescriptor
 Representation of an ISDB service_group_descriptor. More...
 
class  ServiceIdentifierDescriptor
 Representation of a service_identifier_descriptor. More...
 
class  ServiceIdTriplet
 Full identification of a DVB service (aka "DVB triplet"). More...
 
class  ServiceListDescriptor
 Representation of a service_list_descriptor. More...
 
class  ServiceLocationDescriptor
 Representation of an ATSC service_location_descriptor. More...
 
class  ServiceMoveDescriptor
 Representation of a service_move_descriptor. More...
 
class  ServiceRelocatedDescriptor
 Representation of a service_relocated_descriptor. More...
 
struct  Severity
 Message severity. More...
 
class  SHA1
 SHA-1 hash. More...
 
class  SHA256
 SHA-256 hash. More...
 
class  SHA512
 SHA-512 hash. More...
 
class  SharedLibrary
 Shared library handling (.so on Linux, .dylib on macOS, .dll on Windows). More...
 
class  SHDeliverySystemDescriptor
 Representation of a SH_delivery_system_descriptor. More...
 
class  ShortEventDescriptor
 Representation of an short_event_descriptor. More...
 
class  ShortNodeInformationDescriptor
 Representation of an ISDB short_node_information_descriptor. More...
 
class  ShortSmoothingBufferDescriptor
 Representation of a short_smoothing_buffer_descriptor. More...
 
class  SignalAllocator
 Allocate POSIX real-time signal numbers (Linux-specific). More...
 
class  SignalizationDemux
 General-purpose signalization demux. More...
 
class  SignalizationHandlerInterface
 General-purpose signalization handler interface. More...
 
class  SignalState
 State of a modulated broadcast signal. More...
 
class  SimpleApplicationBoundaryDescriptor
 Representation of a simple_application_boundary_descriptor (AIT specific). More...
 
class  SimpleApplicationLocationDescriptor
 Representation of a simple_application_location_descriptor (AIT specific). More...
 
class  SimulCryptDate
 Representation of a date in DVB SimulCrypt protocols (ETSI TS 103 197). More...
 
class  SingleDataStatistics
 Statistics over a single set of data (integer or floating point). More...
 
class  SingletonManager
 Helper for singleton definition. More...
 
class  SinkEnumMediaTypes
 SinkEnumMediaTypes, enumerator returned by ::IPin::EnumMediaTypes (Windows-specific). More...
 
class  SinkEnumPins
 SinkEnumPins, enumerator returned by ::IBaseFilter::EnumPins (Windows-specific). More...
 
class  SinkFilter
 The DirectShow sink filter (Windows-specific). More...
 
class  SinkPin
 SinkPin, input pin for SinkFilter (Windows-specific). More...
 
class  SIParameterDescriptor
 Representation of an ISDB SI_parameter_descriptor. More...
 
class  SIPrimeTSDescriptor
 Representation of an ISDB SI_prime_TS_descriptor. More...
 
class  SkipPlugin
 Skip packet processor plugin for tsp. More...
 
class  SkyLogicalChannelNumberDescriptor
 Representation of a sky_logical_channel_number_descriptor. More...
 
class  SLDescriptor
 Representation of an SL_descriptor. More...
 
struct  smaller_unsigned
 Define the smaller unsigned integer type with at least a given number of bits. More...
 
class  SmoothingBufferDescriptor
 Representation of a smoothing_buffer_descriptor. More...
 
class  Socket
 Base class for TCP and UDP sockets. More...
 
class  SpliceAvailDescriptor
 Representation of an SCTE 35 avail_descriptor (SIT specific). More...
 
class  SpliceDTMFDescriptor
 Representation of an SCTE 35 DTMF_descriptor (SIT specific). More...
 
class  SpliceInformationTable
 Representation of an SCTE 35 Splice Information Table. More...
 
class  SpliceInsert
 Representation of an SCTE 35 SpliceInsert command. More...
 
class  SplicePrivateCommand
 Representation of an SCTE 35 private_command() structure. More...
 
class  SpliceSchedule
 Representation of an SCTE 35 SpliceSchedule command. More...
 
class  SpliceSegmentationDescriptor
 Representation of an SCTE 35 segmentation_descriptor (SIT specific). More...
 
class  SpliceTime
 Representation of an SCTE 35 splice_time() structure. More...
 
class  SpliceTimeDescriptor
 Representation of an SCTE 35 time_descriptor (SIT specific). More...
 
class  SRTInputPlugin
 Secure Reliable Transport (SRT) input plugin for tsp. More...
 
class  SRTOutputPlugin
 Secure Reliable Transport (SRT) output plugin for tsp. More...
 
class  SRTSocket
 Secure Reliable Transport (SRT) Socket. More...
 
class  SSUDataBroadcastIdDescriptor
 Representation of a data_broadcast_id_descriptor for system software update. More...
 
class  SSUEnhancedMessageDescriptor
 Representation of an SSU_enhanced_message_descriptor (UNT specific). More...
 
class  SSUEventNameDescriptor
 Representation of an SSU_event_name_descriptor (UNT specific). More...
 
class  SSULinkageDescriptor
 Representation of a linkage_descriptor for system software update. More...
 
class  SSULocationDescriptor
 Representation of an SSU_location_descriptor (UNT specific). More...
 
class  SSUMessageDescriptor
 Representation of an SSU_message_descriptor (UNT specific). More...
 
class  SSUSubgroupAssociationDescriptor
 Representation of an SSU_subgroup_association_descriptor (UNT specific). More...
 
class  SSUURIDescriptor
 Representation of an SSU_uri_descriptor (UNT specific). More...
 
class  StandaloneTableDemux
 A SectionDemux which extracts MPEG tables without external handler. More...
 
struct  static_power10
 Static values of power of 10. More...
 
class  STCReferenceDescriptor
 Representation of an ISDB STC_reference_descriptor. More...
 
class  STDDescriptor
 Representation of an STD_descriptor. More...
 
class  StereoscopicProgramInfoDescriptor
 Representation of a stereoscopic_program_info_descriptor. More...
 
class  StereoscopicVideoInfoDescriptor
 Representation of a stereoscopic_video_info_descriptor. More...
 
class  StreamEventDescriptor
 Representation of a DSM-CC stream_event_descriptor. More...
 
class  StreamIdentifierDescriptor
 Representation of a stream_identifier_descriptor. More...
 
class  StreamModeDescriptor
 Representation of a DSM-CC stream_mode_descriptor. More...
 
class  StringifyInterface
 An interface to be implemented by classes supporting a conversion to UString. More...
 
class  STT
 Representation of an ATSC System Time Table (STT) More...
 
class  SubRipGenerator
 Generate subtitles in SubRip format (aka SRT). More...
 
class  SubtitlingDescriptor
 Representation of a subtitling_descriptor. More...
 
class  SupplementaryAudioDescriptor
 Representation of a supplementary_audio_descriptor. More...
 
class  SVCExtensionDescriptor
 Representation of an SVC_extension_descriptor. More...
 
class  SwitchableReport
 A report class which can be switched on and off at will. More...
 
class  SysInfo
 A singleton holding information on the current operating system. More...
 
class  SystemClockDescriptor
 Representation of an system_clock_descriptor. More...
 
class  SystemManagementDescriptor
 Representation of an ISDB system_management_descriptor. More...
 
class  SystemMonitor
 Monitoring thread for system resources used by the application. More...
 
class  SystemRandomGenerator
 System-provided PRNG (pseudo-random numbers generator). More...
 
class  T2DeliverySystemDescriptor
 Representation of a T2_delivery_system_descriptor. More...
 
class  T2MIDemux
 This class analyzes T2-MI (DVB-T2 Modulator Interface) from TS packets. More...
 
class  T2MIDescriptor
 Representation of a T2MI_descriptor. More...
 
class  T2MIHandlerInterface
 T2-MI demux handler interface. More...
 
class  T2MIPacket
 Representation of a DVB T2-MI (DVB-T2 Modulator Interface) packet. More...
 
class  TableHandlerInterface
 Table handler interface. More...
 
class  TablePatchXML
 Implementation of on-the-fly table patching using XML. More...
 
class  TablesDisplay
 A class to display PSI/SI tables. More...
 
class  TablesLogger
 This class logs sections and tables. More...
 
class  TablesLoggerFilter
 The default section filter for TablesLogger. More...
 
class  TablesLoggerFilterInterface
 An interface which is used to filter sections in TablesLogger. More...
 
class  TablesLoggerFilterRepository
 The repository of section filters for TablesLogger. More...
 
class  TablesPlugin
 Collect selected PSI/SI tables plugin for tsp. More...
 
class  TargetBackgroundGridDescriptor
 Representation of a target_background_grid_descriptor. More...
 
class  TargetIPAddressDescriptor
 Representation of a target_IP_address_descriptor (INT/UNT specific). More...
 
class  TargetIPSlashDescriptor
 Representation of a target_IP_slash_descriptor (INT specific). More...
 
class  TargetIPSourceSlashDescriptor
 Representation of a target_IP_source_slash_descriptor (INT specific). More...
 
class  TargetIPv6AddressDescriptor
 Representation of a target_IPv6_address_descriptor (INT/UNT specific). More...
 
class  TargetIPv6SlashDescriptor
 Representation of a target_IPv6_slash_descriptor (INT specific). More...
 
class  TargetIPv6SourceSlashDescriptor
 Representation of a target_IPv6_source_slash_descriptor (INT specific). More...
 
class  TargetMACAddressDescriptor
 Representation of a target_MAC_address_descriptor (INT/UNT specific). More...
 
class  TargetMACAddressRangeDescriptor
 Representation of a target_MAC_address_range_descriptor (INT specific). More...
 
class  TargetRegionDescriptor
 Representation of a target_region_descriptor. More...
 
class  TargetRegionNameDescriptor
 Representation of a target_region_name_descriptor. More...
 
class  TargetSerialNumberDescriptor
 Representation of a target_serial_number_descriptor (INT/UNT specific). More...
 
class  TargetSmartcardDescriptor
 Representation of a target_smartcard_descriptor (INT/UNT specific). More...
 
class  TCPConnection
 Base class for a TCP/IP session. More...
 
class  TCPServer
 Implementation of a TCP/IP server. More...
 
class  TCPSocket
 Base class for TCP/IP sockets. More...
 
class  TDES
 Triple-DES block cipher. More...
 
class  TDT
 Representation of a Time & Date Table (TDT) More...
 
class  TelephoneDescriptor
 Representation of a telephone_descriptor. More...
 
class  TeletextCharset
 Implementation of a Teletext character set. More...
 
class  TeletextDemux
 This class extracts Teletext subtitles from TS packets. More...
 
class  TeletextDescriptor
 Representation of a teletext_descriptor. More...
 
class  TeletextFrame
 Description of one Teletext frame. More...
 
class  TeletextHandlerInterface
 Interface to be implemented by classes which need to be notified of Teletext messages using a Teletext demux. More...
 
class  TeletextPlugin
 Extract Teletext subtitles plugin for tsp. More...
 
class  TelnetConnection
 Implementation of a half-duplex line oriented telnet connection. More...
 
class  TerrestrialDeliverySystemDescriptor
 Representation of a terrestrial_delivery_system_descriptor. More...
 
class  TextFormatter
 Format and print a text document using various output types and indentation. More...
 
class  TextParser
 A support class for applications which parse various text formats. More...
 
class  Thread
 Base class for threads. More...
 
class  ThreadAttributes
 Set of attributes for a thread object (ts::Thread). More...
 
class  ThreadLocalObjects
 Thread local objects. More...
 
class  Time
 The Time class implements a basic representation of time. More...
 
class  TimeShiftBuffer
 A TS packet buffer for time shift. More...
 
class  TimeShiftedEventDescriptor
 Representation of a time_shifted_event_descriptor. More...
 
class  TimeSliceFECIdentifierDescriptor
 Representation of a time_slice_fec_identifier_descriptor. More...
 
class  TimeTrackerDemux
 A demux which tracks time stamps per PID. More...
 
class  TLVSyntax
 Representation of a Tag, Length, Value (TVL) syntax. More...
 
class  TOT
 Representation of a Time Offset Table (TOT) More...
 
class  TransportProfileDescriptor
 Representation of a transport_profile_descriptor. More...
 
class  TransportProtocolDescriptor
 Representation of a transport_protocol_descriptor (AIT specific). More...
 
class  TransportStreamDescriptor
 Representation of a transport_stream_descriptor. More...
 
class  TransportStreamId
 Full identification of a DVB transport stream. More...
 
class  TSAnalyzer
 A class which analyzes a complete transport stream. More...
 
class  TSAnalyzerOptions
 Report options for the class TSAnalyzer. More...
 
class  TSAnalyzerReport
 A subclass of TSAnalyzer with reporting capabilities. More...
 
class  TSDatagramOutput
 Send TS packets over datagrams (UDP, SRT, RIST, etc.) More...
 
class  TSDatagramOutputHandlerInterface
 Generic datagram handler interface. More...
 
class  TSDT
 Representation of a Transport Stream Description Table (TSDT) More...
 
class  TSDumpArgs
 Command line arguments for transport stream packets dump. More...
 
class  TSFile
 Transport stream file, input and/or output. More...
 
class  TSFileInputArgs
 Transport stream file input with command-line arguments. More...
 
class  TSFileInputBuffered
 Transport stream file input with a seekable buffer. More...
 
class  TSFileOutputArgs
 Transport stream file output with command-line arguments. More...
 
class  TSFileOutputResync
 A specialized form of transport stream output file with resynchronized PID and continuity counters. More...
 
class  TSForkPipe
 A subclass of ts::ForkPipe which exchanges TS packets on the pipe. More...
 
class  TSInformationDescriptor
 Representation of an ISDB TS_information_descriptor. More...
 
class  TSP
 TSP callback for plugins. More...
 
class  TSPacket
 Basic definition of an MPEG-2 transport packet. More...
 
class  TSPacketMetadata
 Metadata of an MPEG-2 transport packet for tsp plugins. More...
 
class  TSPacketQueue
 Transport stream packet queue for inter-thread communication. More...
 
class  TSPacketStream
 Read/write TS packets on a stream. More...
 
class  TSPacketWindow
 A view over a window of a buffer of TS packets. More...
 
class  TSPControlCommand
 Definition of TSP control commands syntax. More...
 
class  TSProcessor
 Core of the TSP Transport Stream Processor. More...
 
class  TSProcessorArgs
 Transport stream processor options and their command line options. More...
 
class  TSScanner
 A class which scans the services of a transport stream. More...
 
class  TSScrambling
 Transport stream scrambling using multiple algorithms. More...
 
class  TSSpeedMetrics
 TS processing speed metrics evaluation. More...
 
class  TTMLSubtitlingDescriptor
 Representation of a TTML_subtitling_descriptor. More...
 
class  Tuner
 General-purpose implementation of a digital TV tuner. More...
 
class  TunerArgs
 Parameters for tuners and their command-line definitions. More...
 
class  TunerBase
 Base class for Digital TV tuners. More...
 
class  TunerDevice
 Digital TV tuner physical device. More...
 
class  TunerDeviceInfo
 Information on Linux DVB tuner device. More...
 
class  TunerEmulator
 Digital TV tuner emulator. More...
 
class  TunerGraph
 A specialization of a DirectShow graph for tuner reception (Windows-specific). More...
 
class  TVAIdDescriptor
 Representation of a DVB-defined TVA_id_descriptor. More...
 
class  TVCT
 Representation of an ATSC Terrestrial Virtual Channel Table (TVCT) More...
 
class  TypedEnumeration
 Enumeration of typed enum/string pairs. More...
 
class  UDPReceiver
 UDP datagram receiver with common command line options. More...
 
class  UDPSocket
 UDP Socket. More...
 
class  UID
 A singleton which generates 64-bit UID, unique integer. More...
 
struct  underlying_type
 The meta-type ts::underlying_type is a generalization of std::underlying_type which works on integer types as well. More...
 
class  UnimplementedMethod
 Unimplemented method error. More...
 
class  UninitializedVariable
 Uninitialized variable error. More...
 
class  UNT
 Representation of an Update Notification Table (INT). More...
 
class  UpdateDescriptor
 Representation of an update_descriptor (UNT specific). More...
 
class  URILinkageDescriptor
 Representation of a URI_linkage_descriptor. More...
 
class  URL
 Representation of a Uniform Resource Locator (URL). More...
 
class  UserInterrupt
 An instance of this class handles the Ctrl+C user interrupt. More...
 
class  UString
 An implementation of UTF-16 strings. More...
 
class  Variable
 A template class which defines a variable which can be either initialized or uninitialized. More...
 
class  VatekControl
 A class implementing the tsvatek control utility. More...
 
class  VatekOutputPlugin
 Vatek output plugin for tsp. More...
 
class  VBIDataDescriptor
 Representation of a VBI_data_descriptor. More...
 
class  VBITeletextDescriptor
 Representation of a VBI_teletext_descriptor. More...
 
class  VCT
 Base class for ATSC Virtual Channel Table (VCT). More...
 
class  VersionInfo
 Information about version identification of TSDuck. More...
 
class  VideoDecodeControlDescriptor
 Representation of an ISDB video_decode_control_descriptor. More...
 
class  VideoDepthRangeDescriptor
 Representation of a video_depth_range_descriptor. More...
 
class  VideoStreamDescriptor
 Representation of an video_stream_descriptor. More...
 
class  VideoWindowDescriptor
 Representation of a video_window_descriptor. More...
 
class  VirtualSegmentationDescriptor
 Representation of an MPEG-defined virtual_segmentation_descriptor. More...
 
class  VVCAccessUnitDelimiter
 Representation of a VVC access unit delimiter (AUD). More...
 
class  VVCSubpicturesDescriptor
 Representation of a DVB VVC_subpictures_descriptor. More...
 
class  VVCTimingAndHRDDescriptor
 Representation of an VVC_timing_and_HRD_descriptor. More...
 
class  VVCVideoDescriptor
 Representation of a VVC_video_descriptor. More...
 
class  WatchDog
 General-purpose timeout watchdog. More...
 
class  WatchDogHandlerInterface
 Expiration handler interface for general-purpose timeout watchdog. More...
 
class  WebRequest
 Perform a simple Web request (HTTP, HTTPS, FTP). More...
 
class  WebRequestArgs
 Command line arguments for the class WebRequest. More...
 

Typedefs

typedef SafePtr< AbstractDescriptor, NullMutexAbstractDescriptorPtr
 Safe pointer for AbstractDescriptor (not thread-safe).
 
typedef std::vector< AbstractDescriptorPtrAbstractDescriptorPtrVector
 Vector of AbstractDescriptor pointers.
 
typedef SafePtr< AbstractTable, NullMutexAbstractTablePtr
 Safe pointer for AbstractTable (not thread-safe)
 
typedef std::vector< AbstractTablePtrAbstractTablePtrVector
 Vector of BinaryTable pointers.
 
typedef DVBAC3Descriptor AC3Descriptor
 Legacy name for a DVB AC-3_descriptor.
 
typedef DVBAC4Descriptor AC4Descriptor
 Legacy name for a DVB AC-4_descriptor.
 
typedef uint32_t BandWidth
 Bandwidth (OFDM, DVB-T/T2)
 
typedef SafePtr< BinaryTable, NullMutexBinaryTablePtr
 Safe pointer for BinaryTable (not thread-safe)
 
typedef std::vector< BinaryTablePtrBinaryTablePtrVector
 Vector of BinaryTable pointers.
 
typedef user_defined BitRate
 Bitrate in bits/second.
 
typedef std::list< BitrateDifferenceDVBTBitrateDifferenceDVBTList
 List of BitrateDifferenceDVBT.
 
typedef bool(* BoolPredicate) (bool, bool)
 Declaration of a boolean predicate with two arguments.
 
typedef std::list< ByteBlockByteBlockList
 List of ByteBlock.
 
typedef SafePtr< ByteBlock, NullMutexByteBlockPtr
 Safe pointer for ByteBlock, not thread-safe.
 
typedef SafePtr< ByteBlock, MutexByteBlockPtrMT
 Safe pointer for ByteBlock, thread-safe (MT = multi-thread).
 
typedef std::vector< ByteBlockByteBlockVector
 Vector of ByteBlock.
 
typedef SafePtr< CADescriptor, MutexCADescriptorPtr
 Safe pointer to a CADescriptor (thread-safe).
 
typedef char * char_ptr
 Pointer to char.
 
typedef CommandStatus(CommandLineHandler::* CommandLineMethod) (const UString &command, Args &args)
 Profile of a CommandLineHandler method which is invoked by a CommandLine instance for one command.
 
typedef const char * const_char_ptr
 Pointer to const char.
 
typedef const int16_t * const_int16_ptr
 Pointer to const int16_t.
 
typedef const int32_t * const_int32_ptr
 Pointer to const int32_t.
 
typedef const int64_t * const_int64_ptr
 Pointer to const int64_t.
 
typedef const int8_t * const_int8_ptr
 Pointer to const int8_t.
 
typedef const uint16_t * const_uint16_ptr
 Pointer to const uint16_t.
 
typedef const uint32_t * const_uint32_ptr
 Pointer to const uint32_t.
 
typedef const uint64_t * const_uint64_ptr
 Pointer to const uint64_t.
 
typedef const uint8_t * const_uint8_ptr
 Pointer to const uint8_t.
 
typedef std::vector< DektecDeviceInfoDektecDeviceInfoVector
 A vector of Dektec device information.
 
typedef std::list< DeliverySystemDeliverySystemList
 An ordered list of delivery system values (ts::DeliverySystem).
 
typedef SafePtr< Descriptor, NullMutexDescriptorPtr
 Safe pointer for Descriptor (not thread-safe)
 
typedef std::vector< DescriptorPtrDescriptorPtrVector
 Vector of Descriptor pointers Use class DescriptorList for advanced features.
 
typedef uint8_t DID
 Descriptor identifier.
 
typedef void(* DisplayCADescriptorFunction) (TablesDisplay &display, PSIBuffer &private_part, const UString &margin, TID tid)
 Profile of a function to display the private part of a CA_descriptor.
 
typedef void(* DisplayDescriptorFunction) (TablesDisplay &display, PSIBuffer &payload, const UString &margin, DID did, TID tid, PDS pds)
 Profile of a function to display a descriptor.
 
typedef void(* DisplaySectionFunction) (TablesDisplay &display, const Section &section, PSIBuffer &payload, const UString &margin)
 Profile of a function to display a section.
 
typedef DVBEnhancedAC3Descriptor EnhancedAC3Descriptor
 Legacy name for a DVB enhanced_AC-3_descriptor.
 
typedef std::map< UString, UStringEnvironment
 Define a container type holding all environment variables.
 
typedef SafePtr< GitHubRelease, NullMutexGitHubReleasePtr
 Smart pointer to a GitHubRelease (not thread-safe).
 
typedef std::vector< GitHubReleasePtrGitHubReleaseVector
 Vector of smart pointers to GitHubRelease objects.
 
typedef std::list< HiDesDeviceInfoHiDesDeviceInfoList
 A list of HiDes device information.
 
typedef ieee_float< 128, 15, 112 >::type ieee_float128_t
 128-bit IEEE floating point type.
 
typedef ieee_float< 32, 8, 23 >::type ieee_float32_t
 32-bit IEEE floating point type.
 
typedef ieee_float< 64, 11, 52 >::type ieee_float64_t
 64-bit IEEE floating point type.
 
typedef ieee_float< 80, 15, 64 >::type ieee_float80_t
 80-bit IEEE floating point type.
 
typedef int16_t * int16_ptr
 Pointer to int16_t.
 
typedef int32_t * int32_ptr
 Pointer to int32_t.
 
typedef int64_t * int64_ptr
 Pointer to int64_t.
 
typedef int8_t * int8_ptr
 Pointer to int8_t.
 
typedef platform dependent ioctl_request_t
 Portable type for ioctl() request parameter.
 
typedef std::vector< IPv4AddressMaskIPv4AddressMaskVector
 Vector of IP addresses and network masks.
 
typedef std::set< IPv4AddressIPv4AddressSet
 Set of IP addresses.
 
typedef std::vector< IPv4AddressIPv4AddressVector
 Vector of IP addresses.
 
typedef std::set< IPv4SocketAddressIPv4SocketAddressSet
 Set of socket addresses.
 
typedef std::vector< IPv4SocketAddressIPv4SocketAddressVector
 Vector of socket addresses.
 
typedef std::set< IPv6AddressIPv6AddressSet
 Set of IPv6 addresses.
 
typedef std::vector< IPv6AddressIPv6AddressVector
 Vector of IPv6 addresses.
 
typedef std::set< IPv6SocketAddressIPv6SocketAddressSet
 Set of socket addresses.
 
typedef std::vector< IPv6SocketAddressIPv6SocketAddressVector
 Vector of socket addresses.
 
typedef UString(* LogSectionFunction) (const Section &section, size_t max_bytes)
 Profile of a function to display a brief overview ("log") of a section on one line.
 
typedef std::vector< MACAddressMACAddressVector
 Vector of MAC addresses.
 
typedef CASDate< 1990 > MediaGuardDate
 Representation of a MediaGuard date.
 
typedef SubSecond MicroSecond
 This integer type is used to represent a number of microseconds.
 
typedef SubSecond MilliSecond
 This integer type is used to represent a number of milliseconds.
 
typedef SafePtr< ModulationArgs, MutexModulationArgsPtr
 Safe pointer for ModulationArgs (thread-safe).
 
typedef bool(* MonoBoolPredicate) (bool)
 Declaration of a boolean predicate with one argument.
 
typedef bool(* MultiBoolPredicate) (std::initializer_list< bool >)
 Declaration of a boolean predicate with a variable number of arguments.
 
typedef SubSecond NanoSecond
 This integer type is used to represent a number of nanoseconds.
 
typedef SafePtr< Object, MutexObjectPtr
 Safe pointer for Object (thread-safe).
 
typedef ResidentBuffer< TSPacketPacketBuffer
 TS packet are accessed in a memory-resident buffer.
 
typedef uint64_t PacketCounter
 Number of Transport Stream packets.
 
typedef ResidentBuffer< TSPacketMetadataPacketMetadataBuffer
 Metadata for TS packet are accessed in a memory-resident buffer.
 
typedef uint32_t PDS
 Private data specifier.
 
typedef SafePtr< PESPacket, NullMutexPESPacketPtr
 Safe pointer for PESPacket (not thread-safe).
 
typedef std::vector< PESPacketPtrPESPacketPtrVector
 Vector of PESPacket safe pointers.
 
typedef uint16_t PID
 PID value (13 bits).
 
typedef std::bitset< PID_MAXPIDSet
 A bit mask for PID values.
 
typedef std::vector< PluginOptionsPluginOptionsVector
 A vector of plugin options, representing a processing chain.
 
typedef std::list< PolledFilePtrPolledFileList
 List of safe pointers to PolledFile (not thread-safe).
 
typedef SafePtr< PolledFile, NullMutexPolledFilePtr
 Safe pointer to a PolledFile (not thread-safe).
 
typedef platform_specific ProcessId
 Integer type for process identifier.
 
typedef SafePtr< PSILogger, NullMutexPSILoggerPtr
 Safe pointer for PSILogger (not thread-safe).
 
typedef CASDate< 2000 > SafeAccessDate
 Representation of a SafeAccess date.
 
typedef SubSecond Second
 This integer type is used to represent a number of seconds.
 
typedef uint64_t SectionCounter
 Number of sections.
 
typedef SafePtr< Section, NullMutexSectionPtr
 Safe pointer for Section (not thread-safe).
 
typedef std::vector< SectionPtrSectionPtrVector
 Vector of Section pointers.
 
typedef std::set< ServiceIdTripletServiceIdTripletSet
 Set of ServiceIdTriplet.
 
typedef std::vector< ServiceIdTripletServiceIdTripletVector
 Vector of ServiceIdTriplet.
 
typedef std::list< ServiceServiceList
 List of DVB services.
 
typedef std::set< ServiceServiceSet
 Set of DVB services.
 
typedef std::vector< ServiceServiceVector
 Vector of DVB services.
 
typedef DVBStuffingDescriptor StuffingDescriptor
 Legacy name for a DVB stuffing_descriptor.
 
typedef int64_t SubSecond
 This integer type is used to represent any sub-quantity of seconds.
 
typedef platform_specific SysErrorCode
 Integer type for operating system error codes.
 
typedef platform_specific SysRecvBufferPointer
 Pointer type for the address of the data buffer for a recv() system call.
 
typedef platform_specific SysSendBufferPointer
 Pointer type for the address of the data buffer for a send() system call.
 
typedef platform_specific SysSendSizeType
 Integer type for the size of the data buffer for a send() system call.
 
typedef int SysSocketErrorCode
 Type for socket error codes as returned by system calls.
 
typedef platform_specific SysSocketLengthType
 Integer data type which receives the length of a struct sockaddr.
 
typedef platform_specific SysSocketLingerType
 Integer data type for the field l_linger in the struct linger socket option.
 
typedef platform_specific SysSocketMulticastLoopType
 Integer data type for the multicast loop socket option.
 
typedef platform_specific SysSocketMulticastTTLType
 Integer data type for the multicast Time To Live (TTL) socket option.
 
typedef platform_specific SysSocketPktInfoType
 Integer data type for the IP_PKTINFO socket option.
 
typedef platform_specific SysSocketSignedSizeType
 Integer data type for a "signed size" returned from send() or recv() system calls.
 
typedef platform_specific SysSocketTOSType
 Integer data type for the Type Of Service (TOS) socket option.
 
typedef platform_specific SysSocketTTLType
 Integer data type for the Time To Live (TTL) socket option.
 
typedef platform_specific SysSocketType
 Data type for socket descriptors as returned by the socket() system call.
 
typedef platform_specific SysSockOptPointer
 Pointer type for the address of a socket option value.
 
typedef SafePtr< T2MIPacket, NullMutexT2MIPacketPtr
 Safe pointer for T2MIPacket (not thread-safe).
 
typedef std::vector< T2MIPacketPtrT2MIPacketPtrVector
 Vector of T2MIPacket safe pointers.
 
typedef SafePtr< TablesLoggerFilterInterfaceTablesLoggerFilterPtr
 A safe pointer to TablesLogger section filter (not thread-safe).
 
typedef std::vector< TablesLoggerFilterPtrTablesLoggerFilterVector
 A vector of safe pointers to TablesLogger section filters.
 
typedef SafePtr< TablesLogger, NullMutexTablesLoggerPtr
 Safe pointer for TablesLogger (not thread-safe).
 
typedef SafePtr< TCPConnection, NullMutexTCPConnectionPtr
 Safe pointer to a TCPConnection (not thread-safe).
 
typedef SafePtr< TCPConnection, MutexTCPConnectionPtrMT
 Safe pointer to a TCPConnection (thread-safe).
 
typedef SafePtr< TCPSocket, NullMutexTCPSocketPtr
 Safe pointer to TCPSocket, single-threaded.
 
typedef SafePtr< TCPSocket, MutexTCPSocketPtrMT
 Safe pointer to TCPSocket, multi-threaded.
 
typedef uint8_t TID
 Table identifier.
 
typedef std::vector< TLVSyntaxTLVSyntaxVector
 A vector of TLVSyntax.
 
typedef std::set< TransportStreamIdTransportStreamIdSet
 Set of TransportStreamId.
 
typedef std::vector< TransportStreamIdTransportStreamIdVector
 Vector of TransportStreamId.
 
typedef CompactBitSet< 32 > TSPacketLabelSet
 A set of labels used as metadata for a TS packet.
 
typedef std::vector< TSPacketMetadataTSPacketMetadataVector
 Vector of packet metadata.
 
typedef std::vector< TSPacketTSPacketVector
 Vector of packets.
 
typedef TunerBase TunerDevice
 Digital TV tuner physical device.
 
typedef SafePtr< TunerBase, NullMutexTunerPtr
 Safe pointer to a tuner (not thread-safe).
 
typedef std::vector< TunerPtrTunerPtrVector
 Vector of safe pointers to tuners (not thread-safe).
 
typedef char16_t UChar
 UTF-16 character.
 
typedef uint16_t * uint16_ptr
 Pointer to uint16_t.
 
typedef uint32_t * uint32_ptr
 Pointer to uint32_t.
 
typedef uint64_t * uint64_ptr
 Pointer to uint64_t.
 
typedef uint8_t * uint8_ptr
 Pointer to uint8_t.
 
typedef std::list< UStringUStringList
 List of strings.
 
typedef std::vector< UStringUStringVector
 Vector of strings.
 
typedef CASDate< 1980 > ViaccessDate
 Representation of a Viaccess date.
 

Enumerations

enum  : uint16_t {
  ETHERTYPE_IPv4 = 0x0800 ,
  ETHERTYPE_ARP = 0x0806 ,
  ETHERTYPE_WOL = 0x0842 ,
  ETHERTYPE_RARP = 0x8035 ,
  ETHERTYPE_802_1Q = 0x8100 ,
  ETHERTYPE_IPv6 = 0x86DD
}
 Selected Ethernet II protocol type identifiers. More...
 
enum  {
  HEVC_PIC_TYPE_I = 0 ,
  HEVC_PIC_TYPE_IP = 1 ,
  HEVC_PIC_TYPE_IPB = 2
}
 HEVC picture types. More...
 
enum  : uint8_t {
  PST_PICTURE = 0x00 ,
  PST_SLICE_MIN = 0x01 ,
  PST_SLICE_MAX = 0xAF ,
  PST_RESERVED_B0 = 0xB0 ,
  PST_RESERVED_B1 = 0xB1 ,
  PST_USER_DATA = 0xB2 ,
  PST_SEQUENCE_HEADER = 0xB3 ,
  PST_SEQUENCE_ERROR = 0xB4 ,
  PST_EXTENSION = 0xB5 ,
  PST_RESERVED_B6 = 0xB6 ,
  PST_SEQUENCE_END = 0xB7 ,
  PST_GROUP = 0xB8 ,
  PST_SYSTEM_MIN = 0xB9 ,
  PST_SYSTEM_MAX = 0xFF
}
 PES start code values (after start code prefix 00 00 01) More...
 
enum  {
  FPS_23_976 = 0x01 ,
  FPS_24 = 0x02 ,
  FPS_25 = 0x03 ,
  FPS_29_97 = 0x04 ,
  FPS_30 = 0x05 ,
  FPS_50 = 0x06 ,
  FPS_59_94 = 0x07 ,
  FPS_60 = 0x08
}
 Frame rate values (in MPEG-1/2 video sequence). More...
 
enum  {
  AR_SQUARE = 1 ,
  AR_4_3 = 2 ,
  AR_16_9 = 3 ,
  AR_221 = 4
}
 Aspect ratio values (in MPEG-1/2 video sequence header). More...
 
enum  {
  CHROMA_MONO = 0 ,
  CHROMA_420 = 1 ,
  CHROMA_422 = 2 ,
  CHROMA_444 = 3
}
 Chroma format values (in MPEG-1/2 video sequence header). More...
 
enum  {
  VVC_AUT_TRAIL_NUT = 0 ,
  VVC_AUT_STSA_NUT = 1 ,
  VVC_AUT_RADL_NUT = 2 ,
  VVC_AUT_RASL_NUT = 3 ,
  VVC_AUT_RSV_VCL_4 = 4 ,
  VVC_AUT_RSV_VCL_5 = 5 ,
  VVC_AUT_RSV_VCL_6 = 6 ,
  VVC_AUT_IDR_W_RADL = 7 ,
  VVC_AUT_IDR_N_LP = 8 ,
  VVC_AUT_CRA_NUT = 9 ,
  VVC_AUT_GDR_NUT = 10 ,
  VVC_AUT_RSV_IRAP_11 = 11 ,
  VVC_AUT_OPI_NUT = 12 ,
  VVC_AUT_DCI_NUT = 13 ,
  VVC_AUT_VPS_NUT = 14 ,
  VVC_AUT_SPS_NUT = 15 ,
  VVC_AUT_PPS_NUT = 16 ,
  VVC_AUT_PREFIX_APS_NUT = 17 ,
  VVC_AUT_SUFFIX_APS_NUT = 18 ,
  VVC_AUT_PH_NUT = 19 ,
  VVC_AUT_AUD_NUT = 20 ,
  VVC_AUT_EOS_NUT = 21 ,
  VVC_AUT_EOB_NUT = 22 ,
  VVC_AUT_PREFIX_SEI_NUT = 23 ,
  VVC_AUT_SUFFIX_SEI_NUT = 24 ,
  VVC_AUT_FD_NUT = 25 ,
  VVC_AUT_RSV_NVCL_26 = 26 ,
  VVC_AUT_RSV_NVCL_27 = 27 ,
  VVC_AUT_UNSPEC_28 = 28 ,
  VVC_AUT_UNSPEC_31 = 31 ,
  VVC_AUT_INVALID = 0xFF
}
 VVC access unit types. More...
 
enum  {
  VVC_PIC_TYPE_I = 0 ,
  VVC_PIC_TYPE_IP = 1 ,
  VVC_PIC_TYPE_IPB = 2
}
 VVC picture types. More...
 
enum  : uint8_t {
  LINKAGE_INFO = 0x01 ,
  LINKAGE_EPG = 0x02 ,
  LINKAGE_CA_REPLACE = 0x03 ,
  LINKAGE_TS_NIT_BAT = 0x04 ,
  LINKAGE_SERVICE_REPLACE = 0x05 ,
  LINKAGE_DATA_BROADCAST = 0x06 ,
  LINKAGE_RCS_MAP = 0x07 ,
  LINKAGE_HAND_OVER = 0x08 ,
  LINKAGE_SSU = 0x09 ,
  LINKAGE_SSU_TABLE = 0x0A ,
  LINKAGE_IP_NOTIFY = 0x0B ,
  LINKAGE_INT_BAT_NIT = 0x0C ,
  LINKAGE_EVENT = 0x0D ,
  LINKAGE_EXT_EVENT_MIN = 0x0E ,
  LINKAGE_EXT_EVENT_MAX = 0x1F
}
 Linkage type values (in linkage_descriptor) More...
 
enum  : uint8_t {
  IPv4_PROTO_ICMP = 1 ,
  IPv4_PROTO_IGMP = 2 ,
  IPv4_PROTO_TCP = 6 ,
  IPv4_PROTO_UDP = 17 ,
  IPv4_PROTO_V6_ENCAP = 41 ,
  IPv4_PROTO_OSPF = 89 ,
  IPv4_PROTO_SCTP = 132
}
 Selected IP protocol identifiers. More...
 
enum  : uint8_t {
  SID_PSMAP = 0xBC ,
  SID_PRIV1 = 0xBD ,
  SID_PAD = 0xBE ,
  SID_PRIV2 = 0xBF ,
  SID_AUDIO = 0xC0 ,
  SID_AUDIO_MASK = 0x1F ,
  SID_VIDEO = 0xE0 ,
  SID_VIDEO_MASK = 0x0F ,
  SID_ECM = 0xF0 ,
  SID_EMM = 0xF1 ,
  SID_DSMCC = 0xF2 ,
  SID_ISO13522 = 0xF3 ,
  SID_H222_1_A = 0xF4 ,
  SID_H222_1_B = 0xF5 ,
  SID_H222_1_C = 0xF6 ,
  SID_H222_1_D = 0xF7 ,
  SID_H222_1_E = 0xF8 ,
  SID_ANCILLARY = 0xF9 ,
  SID_MP4_SLPACK = 0xFA ,
  SID_MP4_FLEXM = 0xFB ,
  SID_METADATA = 0xFC ,
  SID_EXTENDED = 0xFD ,
  SID_RESERVED = 0xFE ,
  SID_PSDIR = 0xFF
}
 Stream id values, as used in PES header. More...
 
enum  : TID {
  TID_PAT = 0x00 ,
  TID_CAT = 0x01 ,
  TID_PMT = 0x02 ,
  TID_TSDT = 0x03 ,
  TID_MP4SDT = 0x04 ,
  TID_MP4ODT = 0x05 ,
  TID_MDT = 0x06 ,
  TID_IPMP_CT = 0x07 ,
  TID_ISO_14496 = 0x08 ,
  TID_ISO_23001_11 = 0x09 ,
  TID_ISO_23001_10 = 0x0A ,
  TID_DSMCC_MPE = 0x3A ,
  TID_DSMCC_UNM = 0x3B ,
  TID_DSMCC_DDM = 0x3C ,
  TID_DSMCC_SD = 0x3D ,
  TID_DSMCC_PD = 0x3E ,
  TID_MPEG_LAST = 0x3F ,
  TID_NULL = 0xFF ,
  TID_NIT_ACT = 0x40 ,
  TID_NIT_OTH = 0x41 ,
  TID_SDT_ACT = 0x42 ,
  TID_SDT_OTH = 0x46 ,
  TID_BAT = 0x4A ,
  TID_UNT = 0x4B ,
  TID_INT = 0x4C ,
  TID_SAT = 0x4D ,
  TID_EIT_PF_ACT = 0x4E ,
  TID_EIT_PF_OTH = 0x4F ,
  TID_EIT_S_ACT_MIN = 0x50 ,
  TID_EIT_S_ACT_MAX = 0x5F ,
  TID_EIT_S_OTH_MIN = 0x60 ,
  TID_EIT_S_OTH_MAX = 0x6F ,
  TID_TDT = 0x70 ,
  TID_RST = 0x71 ,
  TID_ST = 0x72 ,
  TID_TOT = 0x73 ,
  TID_AIT = 0x74 ,
  TID_CT = 0x75 ,
  TID_RCT = 0x76 ,
  TID_CIT = 0x77 ,
  TID_MPE_FEC = 0x78 ,
  TID_RNT = 0x79 ,
  TID_MPE_IFEC = 0x7A ,
  TID_DIT = 0x7E ,
  TID_SIT = 0x7F ,
  TID_ECM_80 = 0x80 ,
  TID_ECM_81 = 0x81 ,
  TID_EMM_FIRST = 0x82 ,
  TID_EMM_82 = 0x82 ,
  TID_EMM_83 = 0x83 ,
  TID_EMM_84 = 0x84 ,
  TID_EMM_85 = 0x85 ,
  TID_EMM_86 = 0x86 ,
  TID_EMM_87 = 0x87 ,
  TID_EMM_88 = 0x88 ,
  TID_EMM_89 = 0x89 ,
  TID_EMM_8A = 0x8A ,
  TID_EMM_8B = 0x8B ,
  TID_EMM_8C = 0x8C ,
  TID_EMM_8D = 0x8D ,
  TID_EMM_8E = 0x8E ,
  TID_EMM_8F = 0x8F ,
  TID_EMM_LAST = 0x8F ,
  TID_EIT_MIN = 0x4E ,
  TID_EIT_MAX = 0x6F ,
  TID_CAS_FIRST = 0x80 ,
  TID_CAS_LAST = 0x8F ,
  TID_SA_CECM_82 = 0x82 ,
  TID_SA_CECM_83 = 0x83 ,
  TID_SA_EMM_STB_U = 0x84 ,
  TID_SA_EMM_STB_G = 0x85 ,
  TID_SA_EMM_A = 0x86 ,
  TID_SA_EMM_U = 0x87 ,
  TID_SA_EMM_S = 0x88 ,
  TID_SA_EMM_CAM_G = 0x89 ,
  TID_SA_RECM_8A = 0x8A ,
  TID_SA_RECM_8B = 0x8B ,
  TID_SA_EMM_T = 0x8F ,
  TID_LW_DMT = 0x90 ,
  TID_LW_BDT = 0x91 ,
  TID_LW_VIT = 0x92 ,
  TID_LW_VCT = 0x93 ,
  TID_VIA_EMM_FT_E = 0x86 ,
  TID_VIA_EMM_FT_O = 0x87 ,
  TID_VIA_EMM_U = 0x88 ,
  TID_VIA_EMM_GA_E = 0x8A ,
  TID_VIA_EMM_GA_O = 0x8B ,
  TID_VIA_EMM_GH_E = 0x8C ,
  TID_VIA_EMM_GH_O = 0x8D ,
  TID_VIA_EMM_S = 0x8E ,
  TID_MG_EMM_U = 0x82 ,
  TID_MG_EMM_A = 0x83 ,
  TID_MG_EMM_G = 0x84 ,
  TID_MG_EMM_I = 0x85 ,
  TID_MG_EMM_C = 0x86 ,
  TID_MG_EMM_CG = 0x89 ,
  TID_MGT = 0xC7 ,
  TID_TVCT = 0xC8 ,
  TID_CVCT = 0xC9 ,
  TID_RRT = 0xCA ,
  TID_ATSC_EIT = 0xCB ,
  TID_ETT = 0xCC ,
  TID_STT = 0xCD ,
  TID_DCCT = 0xD3 ,
  TID_DCCSCT = 0xD4 ,
  TID_SCTE18_EAS = 0xD8 ,
  TID_SCTE35_SIT = 0xFC ,
  TID_DCT = 0xC0 ,
  TID_DLT = 0xC1 ,
  TID_PCAT = 0xC2 ,
  TID_SDTT = 0xC3 ,
  TID_BIT = 0xC4 ,
  TID_NBIT_BODY = 0xC5 ,
  TID_NBIT_REF = 0xC6 ,
  TID_LDT = 0xC7 ,
  TID_CDT = 0xC8 ,
  TID_LIT = 0xD0 ,
  TID_ERT = 0xD1 ,
  TID_ITT = 0xD2 ,
  TID_AMT = 0xFE
}
 Table identification (TID) values. More...
 
enum  {
  PDS_BSKYB = 0x00000002 ,
  PDS_BSKYB_2 = 0x00000003 ,
  PDS_BSKYB_3 = 0x00000004 ,
  PDS_NAGRA = 0x00000009 ,
  PDS_NAGRA_2 = 0x0000000A ,
  PDS_NAGRA_3 = 0x0000000B ,
  PDS_NAGRA_4 = 0x0000000C ,
  PDS_NAGRA_5 = 0x0000000D ,
  PDS_TPS = 0x00000010 ,
  PDS_EACEM = 0x00000028 ,
  PDS_EICTA = PDS_EACEM ,
  PDS_NORDIG = 0x00000029 ,
  PDS_LOGIWAYS = 0x000000A2 ,
  PDS_CANALPLUS = 0x000000C0 ,
  PDS_EUTELSAT = 0x0000055F ,
  PDS_OFCOM = 0x0000233A ,
  PDS_AOM = 0x414F4D53 ,
  PDS_ATSC = 0x41545343 ,
  PDS_AVS = 0x41565356 ,
  PDS_ISDB = 0x49534442 ,
  PDS_NULL = 0xFFFFFFFF
}
 Selected DVB-registered private data specifier (PDS) values. More...
 
enum  : DID {
  DID_VIDEO = 0x02 ,
  DID_AUDIO = 0x03 ,
  DID_HIERARCHY = 0x04 ,
  DID_REGISTRATION = 0x05 ,
  DID_DATA_ALIGN = 0x06 ,
  DID_TGT_BG_GRID = 0x07 ,
  DID_VIDEO_WIN = 0x08 ,
  DID_CA = 0x09 ,
  DID_LANGUAGE = 0x0A ,
  DID_SYS_CLOCK = 0x0B ,
  DID_MUX_BUF_USE = 0x0C ,
  DID_COPYRIGHT = 0x0D ,
  DID_MAX_BITRATE = 0x0E ,
  DID_PRIV_DATA_IND = 0x0F ,
  DID_SMOOTH_BUF = 0x10 ,
  DID_STD = 0x11 ,
  DID_IBP = 0x12 ,
  DID_CAROUSEL_IDENTIFIER = 0x13 ,
  DID_ASSOCIATION_TAG = 0x14 ,
  DID_DEFERRED_ASSOC_TAGS = 0x15 ,
  DID_NPT_REFERENCE = 0x17 ,
  DID_NPT_ENDPOINT = 0x18 ,
  DID_STREAM_MODE = 0x19 ,
  DID_STREAM_EVENT = 0x1A ,
  DID_MPEG4_VIDEO = 0x1B ,
  DID_MPEG4_AUDIO = 0x1C ,
  DID_IOD = 0x1D ,
  DID_SL = 0x1E ,
  DID_FMC = 0x1F ,
  DID_EXT_ES_ID = 0x20 ,
  DID_MUXCODE = 0x21 ,
  DID_FMX_BUFFER_SIZE = 0x22 ,
  DID_MUX_BUFFER = 0x23 ,
  DID_CONTENT_LABELLING = 0x24 ,
  DID_METADATA_POINTER = 0x25 ,
  DID_METADATA = 0x26 ,
  DID_METADATA_STD = 0x27 ,
  DID_AVC_VIDEO = 0x28 ,
  DID_MPEG2_IPMP = 0x29 ,
  DID_AVC_TIMING_HRD = 0x2A ,
  DID_MPEG2_AAC_AUDIO = 0x2B ,
  DID_FLEX_MUX_TIMING = 0x2C ,
  DID_MPEG4_TEXT = 0x2D ,
  DID_MPEG4_AUDIO_EXT = 0x2E ,
  DID_AUX_VIDEO = 0x2F ,
  DID_SVC_EXT = 0x30 ,
  DID_MVC_EXT = 0x31 ,
  DID_J2K_VIDEO = 0x32 ,
  DID_MVC_OPER_POINT = 0x33 ,
  DID_STEREO_VIDEO_FORMAT = 0x34 ,
  DID_STEREO_PROG_INFO = 0x35 ,
  DID_STEREO_VIDEO_INFO = 0x36 ,
  DID_TRANSPORT_PROFILE = 0x37 ,
  DID_HEVC_VIDEO = 0x38 ,
  DID_VVC_VIDEO = 0x39 ,
  DID_EVC_VIDEO = 0x3A ,
  DID_MPEG_EXTENSION = 0x3F ,
  DID_NETWORK_NAME = 0x40 ,
  DID_SERVICE_LIST = 0x41 ,
  DID_STUFFING = 0x42 ,
  DID_SAT_DELIVERY = 0x43 ,
  DID_CABLE_DELIVERY = 0x44 ,
  DID_VBI_DATA = 0x45 ,
  DID_VBI_TELETEXT = 0x46 ,
  DID_BOUQUET_NAME = 0x47 ,
  DID_SERVICE = 0x48 ,
  DID_COUNTRY_AVAIL = 0x49 ,
  DID_LINKAGE = 0x4A ,
  DID_NVOD_REFERENCE = 0x4B ,
  DID_TIME_SHIFT_SERVICE = 0x4C ,
  DID_SHORT_EVENT = 0x4D ,
  DID_EXTENDED_EVENT = 0x4E ,
  DID_TIME_SHIFT_EVENT = 0x4F ,
  DID_COMPONENT = 0x50 ,
  DID_MOSAIC = 0x51 ,
  DID_STREAM_ID = 0x52 ,
  DID_CA_ID = 0x53 ,
  DID_CONTENT = 0x54 ,
  DID_PARENTAL_RATING = 0x55 ,
  DID_TELETEXT = 0x56 ,
  DID_TELEPHONE = 0x57 ,
  DID_LOCAL_TIME_OFFSET = 0x58 ,
  DID_SUBTITLING = 0x59 ,
  DID_TERREST_DELIVERY = 0x5A ,
  DID_MLINGUAL_NETWORK = 0x5B ,
  DID_MLINGUAL_BOUQUET = 0x5C ,
  DID_MLINGUAL_SERVICE = 0x5D ,
  DID_MLINGUAL_COMPONENT = 0x5E ,
  DID_PRIV_DATA_SPECIF = 0x5F ,
  DID_SERVICE_MOVE = 0x60 ,
  DID_SHORT_SMOOTH_BUF = 0x61 ,
  DID_FREQUENCY_LIST = 0x62 ,
  DID_PARTIAL_TS = 0x63 ,
  DID_DATA_BROADCAST = 0x64 ,
  DID_SCRAMBLING = 0x65 ,
  DID_DATA_BROADCAST_ID = 0x66 ,
  DID_TRANSPORT_STREAM = 0x67 ,
  DID_DSNG = 0x68 ,
  DID_PDC = 0x69 ,
  DID_AC3 = 0x6A ,
  DID_ANCILLARY_DATA = 0x6B ,
  DID_CELL_LIST = 0x6C ,
  DID_CELL_FREQ_LINK = 0x6D ,
  DID_ANNOUNCE_SUPPORT = 0x6E ,
  DID_APPLI_SIGNALLING = 0x6F ,
  DID_ADAPTFIELD_DATA = 0x70 ,
  DID_SERVICE_ID = 0x71 ,
  DID_SERVICE_AVAIL = 0x72 ,
  DID_DEFAULT_AUTHORITY = 0x73 ,
  DID_RELATED_CONTENT = 0x74 ,
  DID_TVA_ID = 0x75 ,
  DID_CONTENT_ID = 0x76 ,
  DID_TIME_SLICE_FEC_ID = 0x77 ,
  DID_ECM_REPETITION_RATE = 0x78 ,
  DID_S2_SAT_DELIVERY = 0x79 ,
  DID_ENHANCED_AC3 = 0x7A ,
  DID_DTS = 0x7B ,
  DID_AAC = 0x7C ,
  DID_XAIT_LOCATION = 0x7D ,
  DID_FTA_CONTENT_MGMT = 0x7E ,
  DID_DVB_EXTENSION = 0x7F ,
  DID_AIT_APPLICATION = 0x00 ,
  DID_AIT_APP_NAME = 0x01 ,
  DID_AIT_TRANSPORT_PROTO = 0x02 ,
  DID_AIT_DVBJ_APP = 0x03 ,
  DID_AIT_DVBJ_APP_LOC = 0x04 ,
  DID_AIT_EXT_APP_AUTH = 0x05 ,
  DID_AIT_APP_RECORDING = 0x06 ,
  DID_AIT_HTML_APP = 0x08 ,
  DID_AIT_HTML_APP_LOC = 0x09 ,
  DID_AIT_HTML_APP_BOUND = 0x0A ,
  DID_AIT_APP_ICONS = 0x0B ,
  DID_AIT_PREFETCH = 0x0C ,
  DID_AIT_DII_LOCATION = 0x0D ,
  DID_AIT_APP_STORAGE = 0x10 ,
  DID_AIT_IP_SIGNALLING = 0x11 ,
  DID_AIT_GRAPHICS_CONST = 0x14 ,
  DID_AIT_APP_LOCATION = 0x15 ,
  DID_AIT_APP_USAGE = 0x16 ,
  DID_AIT_APP_BOUNDARY = 0x17 ,
  DID_INT_SMARTCARD = 0x06 ,
  DID_INT_MAC_ADDR = 0x07 ,
  DID_INT_SERIAL_NUM = 0x08 ,
  DID_INT_IP_ADDR = 0x09 ,
  DID_INT_IPV6_ADDR = 0x0A ,
  DID_INT_PF_NAME = 0x0C ,
  DID_INT_PF_PROVIDER = 0x0D ,
  DID_INT_MAC_ADDR_RANGE = 0x0E ,
  DID_INT_IP_SLASH = 0x0F ,
  DID_INT_IP_SRC_SLASH = 0x10 ,
  DID_INT_IPV6_SLASH = 0x11 ,
  DID_INT_IPV6_SRC_SLASH = 0x12 ,
  DID_INT_STREAM_LOC = 0x13 ,
  DID_INT_ISP_ACCESS = 0x14 ,
  DID_INT_GEN_STREAM_LOC = 0x15 ,
  DID_UNT_SCHEDULING = 0x01 ,
  DID_UNT_UPDATE = 0x02 ,
  DID_UNT_SSU_LOCATION = 0x03 ,
  DID_UNT_MESSAGE = 0x04 ,
  DID_UNT_SSU_EVENT_NAME = 0x05 ,
  DID_UNT_SMARTCARD = 0x06 ,
  DID_UNT_MAC_ADDR = 0x07 ,
  DID_UNT_SERIAL_NUM = 0x08 ,
  DID_UNT_IP_ADDR = 0x09 ,
  DID_UNT_IPV6_ADDR = 0x0A ,
  DID_UNT_SUBGROUP_ASSOC = 0x0B ,
  DID_UNT_ENHANCED_MSG = 0x0C ,
  DID_UNT_SSU_URI = 0x0D ,
  DID_LW_SUBSCRIPTION = 0x81 ,
  DID_LW_SCHEDULE = 0xB0 ,
  DID_LW_PRIV_COMPONENT = 0xB1 ,
  DID_LW_PRIV_LINKAGE = 0xB2 ,
  DID_LW_CHAPTER = 0xB3 ,
  DID_LW_DRM = 0xB4 ,
  DID_LW_VIDEO_SIZE = 0xB5 ,
  DID_LW_EPISODE = 0xB6 ,
  DID_LW_PRICE = 0xB7 ,
  DID_LW_ASSET_REFERENCE = 0xB8 ,
  DID_LW_CONTENT_CODING = 0xB9 ,
  DID_LW_VOD_COMMAND = 0xBA ,
  DID_LW_DELETION_DATE = 0xBB ,
  DID_LW_PLAY_LIST = 0xBC ,
  DID_LW_PLAY_LIST_ENTRY = 0xBD ,
  DID_LW_ORDER_CODE = 0xBE ,
  DID_LW_BOUQUET_REFERENCE = 0xBF ,
  DID_EUTELSAT_CHAN_NUM = 0x83 ,
  DID_NORDIG_CHAN_NUM_V1 = 0x83 ,
  DID_NORDIG_CHAN_NUM_V2 = 0x87 ,
  DID_LOGICAL_CHANNEL_NUM = 0x83 ,
  DID_PREF_NAME_LIST = 0x84 ,
  DID_PREF_NAME_ID = 0x85 ,
  DID_EACEM_STREAM_ID = 0x86 ,
  DID_HD_SIMULCAST_LCN = 0x88 ,
  DID_OFCOM_LOGICAL_CHAN = 0x83 ,
  DID_OFCOM_PREF_NAME_LST = 0x84 ,
  DID_OFCOM_PREF_NAME_ID = 0x85 ,
  DID_OFCOM_SERVICE_ATTR = 0x86 ,
  DID_OFCOM_SHORT_SRV_NAM = 0x87 ,
  DID_OFCOM_HD_SIMULCAST = 0x88 ,
  DID_OFCOM_GUIDANCE = 0x89 ,
  DID_DTG_STREAM_IND = 0x80 ,
  DID_PIO_OFFSET_TIME = 0X80 ,
  DID_LOGICAL_CHANNEL_81 = 0x81 ,
  DID_PRIVATE2 = 0x82 ,
  DID_LOGICAL_CHANNEL = 0x83 ,
  DID_PIO_CONTENT = 0x83 ,
  DID_PIO_LOGO = 0x84 ,
  DID_ADSL_DELIVERY = 0x85 ,
  DID_PIO_FEE = 0x86 ,
  DID_PIO_EVENT_RANGE = 0x88 ,
  DID_PIO_COPY_MANAGEMENT = 0x8B ,
  DID_PIO_COPY_CONTROL = 0x8C ,
  DID_PIO_PPV = 0x8E ,
  DID_PIO_STB_SERVICE_ID = 0x90 ,
  DID_PIO_MASKING_SERV_ID = 0x91 ,
  DID_PIO_STB_SERVMAP_UPD = 0x92 ,
  DID_NEW_SERVICE_LIST = 0x93 ,
  DID_MESSAGE_NAGRA = 0x94 ,
  DID_ITEM_EVENT = 0xA1 ,
  DID_ITEM_ZAPPING = 0xA2 ,
  DID_APPLI_MESSAGE = 0xA3 ,
  DID_LIST = 0xA4 ,
  DID_KEY_LIST = 0xB0 ,
  DID_PICTURE_SIGNALLING = 0xB1 ,
  DID_COUNTER_BB = 0xBB ,
  DID_DATA_COMPONENT_BD = 0xBD ,
  DID_SYSTEM_MGMT_BE = 0xBE ,
  DID_VO_LANGUAGE = 0xC0 ,
  DID_DATA_LIST = 0xC1 ,
  DID_APPLI_LIST = 0xC2 ,
  DID_MESSAGE = 0xC3 ,
  DID_FILE = 0xC4 ,
  DID_RADIO_FORMAT = 0xC5 ,
  DID_APPLI_STARTUP = 0xC6 ,
  DID_PATCH = 0xC7 ,
  DID_LOADER = 0xC8 ,
  DID_CHANNEL_MAP_UPDATE = 0xC9 ,
  DID_PPV = 0xCA ,
  DID_COUNTER_CB = 0xCB ,
  DID_OPERATOR_INFO = 0xCC ,
  DID_SERVICE_DEF_PARAMS = 0xCD ,
  DID_FINGER_PRINTING = 0xCE ,
  DID_FINGER_PRINTING_V2 = 0xCF ,
  DID_CONCEALED_GEO_ZONES = 0xD0 ,
  DID_COPY_PROTECTION = 0xD1 ,
  DID_MG_SUBSCRIPTION = 0xD3 ,
  DID_CABLE_BACKCH_DELIV = 0xD4 ,
  DID_INTERACT_SNAPSHOT = 0xD5 ,
  DID_ICON_POSITION = 0xDC ,
  DID_ICON_PIXMAP = 0xDD ,
  DID_ZONE_COORDINATE = 0xDE ,
  DID_HD_APP_CONTROL_CODE = 0xDF ,
  DID_EVENT_REPEAT = 0xE0 ,
  DID_PPV_V2 = 0xE1 ,
  DID_HYPERLINK_REF = 0xE2 ,
  DID_SHORT_SERVICE = 0xE4 ,
  DID_OPERATOR_TELEPHONE = 0xE5 ,
  DID_ITEM_REFERENCE = 0xE6 ,
  DID_MH_PARAMETERS = 0xE9 ,
  DID_LOGICAL_REFERENCE = 0xED ,
  DID_DATA_VERSION = 0xEE ,
  DID_SERVICE_GROUP = 0xEF ,
  DID_STREAM_LOC_TRANSP = 0xF0 ,
  DID_DATA_LOCATOR = 0xF1 ,
  DID_RESIDENT_APP = 0xF2 ,
  DID_RESIDENT_APP_SIGNAL = 0xF3 ,
  DID_MH_LOGICAL_REF = 0xF8 ,
  DID_RECORD_CONTROL = 0xF9 ,
  DID_CMPS_RECORD_CONTROL = 0xFA ,
  DID_EPISODE = 0xFB ,
  DID_CMP_SELECTION = 0xFC ,
  DID_DATA_COMPONENT_FD = 0xFD ,
  DID_SYSTEM_MGMT_FE = 0xFE ,
  DID_LOGICAL_CHANNEL_SKY = 0xB1 ,
  DID_SERVICE_SKY = 0xB2 ,
  DID_AVS3_VIDEO = 0xD1 ,
  DID_AV1_VIDEO = 0x80 ,
  DID_ATSC_STUFFING = 0x80 ,
  DID_ATSC_AC3 = 0x81 ,
  DID_ATSC_PID = 0x85 ,
  DID_ATSC_CAPTION = 0x86 ,
  DID_ATSC_CONTENT_ADVIS = 0x87 ,
  DID_CUE_IDENTIFIER = 0x8A ,
  DID_ATSC_EXT_CHAN_NAME = 0xA0 ,
  DID_ATSC_SERVICE_LOC = 0xA1 ,
  DID_ATSC_TIME_SHIFT = 0xA2 ,
  DID_ATSC_COMPONENT_NAME = 0xA3 ,
  DID_ATSC_DATA_BRDCST = 0xA4 ,
  DID_ATSC_PID_COUNT = 0xA5 ,
  DID_ATSC_DOWNLOAD = 0xA6 ,
  DID_ATSC_MPROTO_ENCAPS = 0xA7 ,
  DID_ATSC_DCC_DEPARTING = 0xA8 ,
  DID_ATSC_DCC_ARRIVING = 0xA9 ,
  DID_ATSC_REDIST_CONTROL = 0xAA ,
  DID_ATSC_GENRE = 0xAB ,
  DID_ATSC_PRIVATE_INFO = 0xAD ,
  DID_ATSC_ENHANCED_AC3 = 0xCC ,
  DID_EAS_INBAND_DETAILS = 0x00 ,
  DID_EAS_INBAND_EXCEPTS = 0x01 ,
  DID_EAS_AUDIO_FILE = 0x02 ,
  DID_EAS_METADATA = 0x03 ,
  DID_SPLICE_AVAIL = 0x00 ,
  DID_SPLICE_DTMF = 0x01 ,
  DID_SPLICE_SEGMENT = 0x02 ,
  DID_SPLICE_TIME = 0x03 ,
  DID_ISDB_MATERIAL_INFO = 0x67 ,
  DID_ISDB_HYBRID_INFO = 0x68 ,
  DID_ISDB_HIERARCH_TRANS = 0xC0 ,
  DID_ISDB_COPY_CONTROL = 0xC1 ,
  DID_ISDB_NETWORK_ID = 0xC2 ,
  DID_ISDB_PART_TS_TIME = 0xC3 ,
  DID_ISDB_AUDIO_COMP = 0xC4 ,
  DID_ISDB_HYPERLINK = 0xC5 ,
  DID_ISDB_TARGET_REGION = 0xC6 ,
  DID_ISDB_DATA_CONTENT = 0xC7 ,
  DID_ISDB_VIDEO_CONTROL = 0xC8 ,
  DID_ISDB_DOWNLOAD_CONT = 0xC9 ,
  DID_ISDB_CA_EMM_TS = 0xCA ,
  DID_ISDB_CA_CONTRACT = 0xCB ,
  DID_ISDB_CA_SERVICE = 0xCC ,
  DID_ISDB_TS_INFO = 0xCD ,
  DID_ISDB_EXT_BROADCAST = 0xCE ,
  DID_ISDB_LOGO_TRANSM = 0xCF ,
  DID_ISDB_BASIC_LOCAL_EV = 0xD0 ,
  DID_ISDB_REFERENCE = 0xD1 ,
  DID_ISDB_NODE_RELATION = 0xD2 ,
  DID_ISDB_SHORT_NODE_INF = 0xD3 ,
  DID_ISDB_STC_REF = 0xD4 ,
  DID_ISDB_SERIES = 0xD5 ,
  DID_ISDB_EVENT_GROUP = 0xD6 ,
  DID_ISDB_SI_PARAMETER = 0xD7 ,
  DID_ISDB_BROADCAST_NAME = 0xD8 ,
  DID_ISDB_COMP_GROUP = 0xD9 ,
  DID_ISDB_SI_PRIME_TS = 0xDA ,
  DID_ISDB_BOARD_INFO = 0xDB ,
  DID_ISDB_LDT_LINKAGE = 0xDC ,
  DID_ISDB_CONNECT_TRANSM = 0xDD ,
  DID_ISDB_CONTENT_AVAIL = 0xDE ,
  DID_ISDB_EXTENSION = 0xDF ,
  DID_ISDB_SERVICE_GROUP = 0xE0 ,
  DID_ISDB_AREA_BCAST_INF = 0xE1 ,
  DID_ISDB_NETW_DOWNLOAD = 0xE2 ,
  DID_ISDB_DOWNLOAD_PROT = 0xE3 ,
  DID_ISDB_CA_ACTIVATION = 0xE4 ,
  DID_ISDB_WMCTDS = 0xF3 ,
  DID_ISDB_ADV_WDS = 0xF4 ,
  DID_ISDB_SCRAMBLE_METH = 0xF5 ,
  DID_ISDB_CA = 0xF6 ,
  DID_ISDB_CAROUSEL_COMP = 0xF7 ,
  DID_ISDB_COND_PLAYBACK = 0xF8 ,
  DID_ISDB_CABLE_TS_DIV = 0xF9 ,
  DID_ISDB_TERRES_DELIV = 0xFA ,
  DID_ISDB_PARTIAL_RECP = 0xFB ,
  DID_ISDB_EMERGENCY_INFO = 0xFC ,
  DID_ISDB_DATA_COMP = 0xFD ,
  DID_ISDB_SYSTEM_MGMT = 0xFE
}
 Descriptor tag values (descriptor identification, DID) More...
 
enum  : DID {
  MPEG_EDID_OBJ_DESC_UPD = 0x02 ,
  MPEG_EDID_HEVC_TIM_HRD = 0x03 ,
  MPEG_EDID_AF_EXT = 0x04 ,
  MPEG_EDID_HEVC_OP_POINT = 0x05 ,
  MPEG_EDID_HEVC_HIER_EXT = 0x06 ,
  MPEG_EDID_GREEN_EXT = 0x07 ,
  MPEG_EDID_MPH3D_AUDIO = 0x08 ,
  MPEG_EDID_MPH3D_CONFIG = 0x09 ,
  MPEG_EDID_MPH3D_SCENE = 0x0A ,
  MPEG_EDID_MPH3D_TEXT = 0x0B ,
  MPEG_EDID_MPH3D_MULTI = 0x0C ,
  MPEG_EDID_MPH3D_DRCLOUD = 0x0D ,
  MPEG_EDID_MPH3D_COMMAND = 0x0E ,
  MPEG_EDID_QUALITY_EXT = 0x0F ,
  MPEG_EDID_VIRT_SEGMENT = 0x10 ,
  MPEG_EDID_TIMED_METADATA_EXT = 0x11 ,
  MPEG_EDID_HEVC_TILE_SSTRM = 0x12 ,
  MPEG_EDID_HEVC_SUBREGION = 0x13 ,
  MPEG_EDID_JXS_VIDEO = 0x14 ,
  MPEG_EDID_VVC_TIM_HRD = 0x15 ,
  MPEG_EDID_EVC_TIM_HRD = 0x16 ,
  MPEG_EDID_LCEVC_VIDEO = 0x17 ,
  MPEG_EDID_LCEVC_LINKAGE = 0x18 ,
  MPEG_EDID_MEDIA_SVC_KIND = 0x19 ,
  MPEG_EDID_NULL = 0xFF
}
 MPEG extended descriptor tag values (in MPEG extension_descriptor) More...
 
enum  : DID {
  EDID_IMAGE_ICON = 0x00 ,
  EDID_CPCM_DELIVERY_SIG = 0x01 ,
  EDID_CP = 0x02 ,
  EDID_CP_IDENTIFIER = 0x03 ,
  EDID_T2_DELIVERY = 0x04 ,
  EDID_SH_DELIVERY = 0x05 ,
  EDID_SUPPL_AUDIO = 0x06 ,
  EDID_NETW_CHANGE_NOTIFY = 0x07 ,
  EDID_MESSAGE = 0x08 ,
  EDID_TARGET_REGION = 0x09 ,
  EDID_TARGET_REGION_NAME = 0x0A ,
  EDID_SERVICE_RELOCATED = 0x0B ,
  EDID_XAIT_PID = 0x0C ,
  EDID_C2_DELIVERY = 0x0D ,
  EDID_DTS_HD_AUDIO = 0x0E ,
  EDID_DTS_NEURAL = 0x0F ,
  EDID_VIDEO_DEPTH_RANGE = 0x10 ,
  EDID_T2MI = 0x11 ,
  EDID_URI_LINKAGE = 0x13 ,
  EDID_CI_ANCILLARY_DATA = 0x14 ,
  EDID_AC4 = 0x15 ,
  EDID_C2_BUNDLE_DELIVERY = 0x16 ,
  EDID_S2X_DELIVERY = 0x17 ,
  EDID_PROTECTION_MSG = 0x18 ,
  EDID_AUDIO_PRESELECT = 0x19 ,
  EDID_TTML_SUBTITLING = 0x20 ,
  EDID_DTS_UHD = 0x21 ,
  EDID_SERVICE_PROMINENCE = 0x22 ,
  EDID_VVC_SUBPICTURES = 0x23 ,
  EDID_S2XV2_DELIVERY = 0x24 ,
  EDID_NULL = 0xFF
}
 DVB extended descriptor tag values (in DVB extension_descriptor) More...
 
enum  : uint8_t {
  ST_NULL = 0x00 ,
  ST_MPEG1_VIDEO = 0x01 ,
  ST_MPEG2_VIDEO = 0x02 ,
  ST_MPEG1_AUDIO = 0x03 ,
  ST_MPEG2_AUDIO = 0x04 ,
  ST_PRIV_SECT = 0x05 ,
  ST_PES_PRIV = 0x06 ,
  ST_MHEG = 0x07 ,
  ST_DSMCC = 0x08 ,
  ST_MPEG2_ATM = 0x09 ,
  ST_DSMCC_MPE = 0x0A ,
  ST_DSMCC_UN = 0x0B ,
  ST_DSMCC_SD = 0x0C ,
  ST_DSMCC_SECT = 0x0D ,
  ST_MPEG2_AUX = 0x0E ,
  ST_AAC_AUDIO = 0x0F ,
  ST_MPEG4_VIDEO = 0x10 ,
  ST_MPEG4_AUDIO = 0x11 ,
  ST_MPEG4_PES = 0x12 ,
  ST_MPEG4_SECT = 0x13 ,
  ST_DSMCC_DLOAD = 0x14 ,
  ST_MDATA_PES = 0x15 ,
  ST_MDATA_SECT = 0x16 ,
  ST_MDATA_DC = 0x17 ,
  ST_MDATA_OC = 0x18 ,
  ST_MDATA_DLOAD = 0x19 ,
  ST_MPEG2_IPMP = 0x1A ,
  ST_AVC_VIDEO = 0x1B ,
  ST_MPEG4_AUDIO_RAW = 0x1C ,
  ST_MPEG4_TEXT = 0x1D ,
  ST_AUX_VIDEO = 0x1E ,
  ST_AVC_SUBVIDEO_G = 0x1F ,
  ST_AVC_SUBVIDEO_H = 0x20 ,
  ST_J2K_VIDEO = 0x21 ,
  ST_MPEG2_3D_VIEW = 0x22 ,
  ST_AVC_3D_VIEW = 0x23 ,
  ST_HEVC_VIDEO = 0x24 ,
  ST_HEVC_SUBVIDEO = 0x25 ,
  ST_AVC_SUBVIDEO_I = 0x26 ,
  ST_EXT_MEDIA = 0x27 ,
  ST_HEVC_SUBVIDEO_G = 0x28 ,
  ST_HEVC_SUBVIDEO_TG = 0x29 ,
  ST_HEVC_SUBVIDEO_H = 0x2A ,
  ST_HEVC_SUBVIDEO_TH = 0x2B ,
  ST_GREEN = 0x2C ,
  ST_MPH3D_MAIN = 0x2D ,
  ST_MPH3D_AUX = 0x2E ,
  ST_QUALITY = 0x2F ,
  ST_MEDIA_ORCHESTR = 0x30 ,
  ST_HEVC_TILESET = 0x31 ,
  ST_JPEG_XS_VIDEO = 0x32 ,
  ST_VVC_VIDEO = 0x33 ,
  ST_VVC_VIDEO_SUBSET = 0x34 ,
  ST_EVC_VIDEO = 0x35 ,
  ST_LCEVC_VIDEO = 0x36 ,
  ST_IPMP = 0x7F ,
  ST_AC3_AUDIO = 0x81 ,
  ST_SCTE35_SPLICE = 0x86 ,
  ST_EAC3_AUDIO = 0x87 ,
  ST_AVS3 = 0xD4
}
 Stream type values, as used in the PMT. More...
 
enum  : uint8_t {
  RS_UNDEFINED = 0x00 ,
  RS_NOT_RUNNING = 0x01 ,
  RS_STARTING = 0x02 ,
  RS_PAUSING = 0x03 ,
  RS_RUNNING = 0x04 ,
  RS_OFF_AIR = 0x05
}
 Running status values (in RST, EIT, etc.) More...
 
enum  : uint8_t {
  SCRAMBLING_DVB_CSA1 = 0x01 ,
  SCRAMBLING_DVB_CSA2 = 0x02 ,
  SCRAMBLING_DVB_CSA3 = 0x03 ,
  SCRAMBLING_DVB_CSA3_MIN = 0x04 ,
  SCRAMBLING_DVB_CSA3_FULL = 0x05 ,
  SCRAMBLING_DVB_CISSA1 = 0x10 ,
  SCRAMBLING_ATIS_IIF_IDSA = 0x70 ,
  SCRAMBLING_USER_MIN = 0x80 ,
  SCRAMBLING_DUCK_AES_CBC = 0xF0 ,
  SCRAMBLING_DUCK_AES_CTR = 0xF1 ,
  SCRAMBLING_USER_MAX = 0xFE ,
  SCRAMBLING_RESERVED = 0xFF
}
 Scrambling mode values (in scrambling_descriptor) More...
 
enum  : uint16_t {
  DBID_DATA_PIPE = 0x0001 ,
  DBID_ASYNC_DATA_STREAM = 0x0002 ,
  DBID_SYNC_DATA_STREAM = 0x0003 ,
  DBID_SYNCED_DATA_STREAM = 0x0004 ,
  DBID_MPE = 0x0005 ,
  DBID_DATA_CSL = 0x0006 ,
  DBID_OBJECT_CSL = 0x0007 ,
  DBID_ATM = 0x0008 ,
  DBID_HP_ASYNC_DATA_STREAM = 0x0009 ,
  DBID_SSU = 0x000A ,
  DBID_IPMAC_NOTIFICATION = 0x000B ,
  DBID_MHP_OBJECT_CSL = 0x00F0 ,
  DBID_MHP_MPE = 0x00F1 ,
  DBID_EUTELSAT_DATA_PIPE = 0x0100 ,
  DBID_EUTELSAT_DATA_STREAM = 0x0101 ,
  DBID_SAGEM_IP = 0x0102 ,
  DBID_BARCO_DATA_BRD = 0x0103 ,
  DBID_CIBERCITY_MPE = 0x0104 ,
  DBID_CYBERSAT_MPE = 0x0105 ,
  DBID_TDN = 0x0106 ,
  DBID_OPENTV_DATA_CSL = 0x0107 ,
  DBID_PANASONIC = 0x0108 ,
  DBID_KABEL_DEUTSCHLAND = 0x0109 ,
  DBID_TECHNOTREND = 0x010A ,
  DBID_MEDIAHIGHWAY_SSU = 0x010B ,
  DBID_GUIDE_PLUS = 0x010C ,
  DBID_ACAP_OBJECT_CSL = 0x010D ,
  DBID_MICRONAS = 0x010E ,
  DBID_POLSAT = 0x0110 ,
  DBID_DTG = 0x0111 ,
  DBID_SKYMEDIA = 0x0112 ,
  DBID_INTELLIBYTE = 0x0113 ,
  DBID_TELEWEB_DATA_CSL = 0x0114 ,
  DBID_TELEWEB_OBJECT_CSL = 0x0115 ,
  DBID_TELEWEB = 0x0116 ,
  DBID_BBC = 0x0117 ,
  DBID_ELECTRA = 0x0118 ,
  DBID_BBC_2_3 = 0x011A ,
  DBID_TELETEXT = 0x011B ,
  DBID_SKY_DOWNLOAD_1_5 = 0x0120 ,
  DBID_ICO = 0x0121 ,
  DBID_CIPLUS_DATA_CSL = 0x0122 ,
  DBID_HBBTV = 0x0123 ,
  DBID_ROVI_PREMIUM = 0x0124 ,
  DBID_MEDIA_GUIDE = 0x0125 ,
  DBID_INVIEW = 0x0126 ,
  DBID_BOTECH = 0x0130 ,
  DBID_SCILLA_PUSHVOD_CSL = 0x0131 ,
  DBID_CANAL_PLUS = 0x0140 ,
  DBID_OIPF_OBJECT_CSL = 0x0150 ,
  DBID_4TV = 0x4444 ,
  DBID_NOKIA_IP_SSU = 0x4E4F ,
  DBID_BBG_DATA_CSL = 0xBBB1 ,
  DBID_BBG_OBJECT_CSL = 0xBBB2 ,
  DBID_BBG = 0xBBBB
}
 Data broadcast id values (in data_broadcast[_id]_descriptor) More...
 
enum  : uint16_t {
  BID_TVNUMERIC = 0x0086 ,
  BID_TVNUMERIC_EUTELSAT = 0xC030 ,
  BID_TVNUMERIC_ASTRA = 0xC031
}
 DVB-assigned Bouquet Identifier values. More...
 
enum  : uint16_t {
  CASID_NULL = 0x0000 ,
  CASID_MEDIAGUARD_MIN = 0x0100 ,
  CASID_MEDIAGUARD_MAX = 0x01FF ,
  CASID_VIACCESS_MIN = 0x0500 ,
  CASID_VIACCESS_MAX = 0x05FF ,
  CASID_IRDETO_MIN = 0x0600 ,
  CASID_IRDETO_MAX = 0x06FF ,
  CASID_NDS_MIN = 0x0900 ,
  CASID_NDS_MAX = 0x09FF ,
  CASID_CONAX_MIN = 0x0B00 ,
  CASID_CONAX_MAX = 0x0BFF ,
  CASID_CRYPTOWORKS_MIN = 0x0D00 ,
  CASID_CRYPTOWORKS_MAX = 0x0DFF ,
  CASID_NAGRA_MIN = 0x1800 ,
  CASID_NAGRA_MAX = 0x18FF ,
  CASID_THALESCRYPT_MIN = 0x4A80 ,
  CASID_THALESCRYPT_MAX = 0x4A8F ,
  CASID_WIDEVINE_MIN = 0x4AD4 ,
  CASID_WIDEVINE_MAX = 0x4AD5 ,
  CASID_SAFEACCESS = 0x4ADC
}
 DVB-assigned CA System Identifier values. More...
 
enum  : uint16_t {
  NID_TNT_FRANCE = 0x20FA ,
  NID_DTT_UK = 0x233A
}
 DVB-assigned Network Identifier values. More...
 
enum  : uint16_t {
  MHP_PROTO_CAROUSEL = 0x0001 ,
  MHP_PROTO_MPE = 0x0002 ,
  MHP_PROTO_HTTP = 0x0003
}
 DVB-MHP transport protocol ids. More...
 
enum  : uint16_t {
  ATSC_TTYPE_TVCT_CURRENT = 0x0000 ,
  ATSC_TTYPE_TVCT_NEXT = 0x0001 ,
  ATSC_TTYPE_CVCT_CURRENT = 0x0002 ,
  ATSC_TTYPE_CVCT_NEXT = 0x0003 ,
  ATSC_TTYPE_CETT = 0x0004 ,
  ATSC_TTYPE_DCCSCT = 0x0005 ,
  ATSC_TTYPE_EIT_FIRST = 0x0100 ,
  ATSC_TTYPE_EIT_LAST = 0x017F ,
  ATSC_TTYPE_EETT_FIRST = 0x0200 ,
  ATSC_TTYPE_EETT_LAST = 0x027F ,
  ATSC_TTYPE_RRT_FIRST = 0x0301 ,
  ATSC_TTYPE_RRT_LAST = 0x03FF ,
  ATSC_TTYPE_DCCT_FIRST = 0x1400 ,
  ATSC_TTYPE_DCCT_LAST = 0x14FF
}
 Table type in ATSC Master Guide Table (MGT) More...
 
enum  : uint8_t {
  ATSC_STYPE_ANALOG_TV = 0x01 ,
  ATSC_STYPE_DTV = 0x02 ,
  ATSC_STYPE_AUDIO = 0x03 ,
  ATSC_STYPE_DATA = 0x04 ,
  ATSC_STYPE_SOFTWARE = 0x05
}
 Service type in ATSC Virtual Channel Table (VCT) More...
 
enum  : uint8_t {
  CUE_INSERT_NULL_SCHEDULE = 0x00 ,
  CUE_ALL_COMMANDS = 0x01 ,
  CUE_SEGMENTATION = 0x02 ,
  CUE_TIERED_SPLICING = 0x03 ,
  CUE_TIERED_SEGMENTATION = 0x04
}
 Cue stream type values in cue_identifier_descriptor. More...
 
enum  : uint8_t {
  SPLICE_NULL = 0x00 ,
  SPLICE_SCHEDULE = 0x04 ,
  SPLICE_INSERT = 0x05 ,
  SPLICE_TIME_SIGNAL = 0x06 ,
  SPLICE_BANDWIDTH_RESERVATION = 0x07 ,
  SPLICE_PRIVATE_COMMAND = 0xFF
}
 Splice commands in Splice Information Table. More...
 
enum  : uint8_t {
  SC_CLEAR = 0 ,
  SC_DVB_RESERVED = 1 ,
  SC_EVEN_KEY = 2 ,
  SC_ODD_KEY = 3
}
 Scrambling_control values (used in TS and PES packets headers) More...
 
enum  : PID {
  PID_PAT = 0x0000 ,
  PID_CAT = 0x0001 ,
  PID_TSDT = 0x0002 ,
  PID_MPEG_LAST = 0x000F ,
  PID_DVB_FIRST = 0x0010 ,
  PID_NIT = 0x0010 ,
  PID_SDT = 0x0011 ,
  PID_BAT = 0x0011 ,
  PID_EIT = 0x0012 ,
  PID_CIT = 0x0012 ,
  PID_RST = 0x0013 ,
  PID_TDT = 0x0014 ,
  PID_TOT = 0x0014 ,
  PID_NETSYNC = 0x0015 ,
  PID_RNT = 0x0016 ,
  PID_SAT = 0x001B ,
  PID_INBSIGN = 0x001C ,
  PID_MEASURE = 0x001D ,
  PID_DIT = 0x001E ,
  PID_SIT = 0x001F ,
  PID_DVB_LAST = 0x001F ,
  PID_DCT = 0x0017 ,
  PID_ISDB_FIRST = 0x0020 ,
  PID_LIT = 0x0020 ,
  PID_ERT = 0x0021 ,
  PID_PCAT = 0x0022 ,
  PID_SDTT = 0x0023 ,
  PID_BIT = 0x0024 ,
  PID_NBIT = 0x0025 ,
  PID_LDT = 0x0025 ,
  PID_ISDB_EIT_2 = 0x0026 ,
  PID_ISDB_EIT_3 = 0x0027 ,
  PID_SDTT_TER = 0x0028 ,
  PID_CDT = 0x0029 ,
  PID_AMT = 0x002E ,
  PID_ISDB_LAST = 0x002F ,
  PID_ATSC_FIRST = 0x1FF0 ,
  PID_ATSC_PAT_E = 0x1FF7 ,
  PID_PSIP_TS_E = 0x1FF9 ,
  PID_PSIP = 0x1FFB ,
  PID_ATSC_LAST = 0x1FFE ,
  PID_NULL = 0x1FFF
}
 Predefined PID values. More...
 
enum  : uint32_t {
  CCHAR_LETTER = 0x0001 ,
  CCHAR_DIGIT = 0x0002 ,
  CCHAR_HEXA = 0x0004 ,
  CCHAR_LATIN = 0x0008 ,
  CCHAR_GREEK = 0x0010 ,
  CCHAR_HEBREW = 0x0020 ,
  CCHAR_ARABIC = 0x0040 ,
  CCHAR_THAI = 0x0080 ,
  CCHAR_CYRILLIC = 0x0100 ,
  CCHAR_CDIACRIT = 0x0200 ,
  CCHAR_SPACE = 0x0400 ,
  CCHAR_PRINT = 0x0800
}
 Characteristics of a character. More...
 
enum  : uint8_t {
  AFDID_TIMELINE = 0x04 ,
  AFDID_LOCATION = 0x05 ,
  AFDID_BASEURL = 0x06 ,
  AFDID_CETS_BRANGE = 0x07 ,
  AFDID_3DA_EXTSTREAM = 0x08 ,
  AFDID_3DA_MULTISTREAM = 0x09 ,
  AFDID_3DA_COMMAND = 0x0A ,
  AFDID_BOUNDARY = 0x0B ,
  AFDID_LABELING = 0x0C ,
  AFDID_HEVC_TILE = 0x0D
}
 Adaptation field descriptor tags. More...
 
enum  {
  AVC_AUT_UNSPECIFIED = 0 ,
  AVC_AUT_NON_IDR = 1 ,
  AVC_AUT_SLICE_A = 2 ,
  AVC_AUT_SLICE_B = 3 ,
  AVC_AUT_SLICE_C = 4 ,
  AVC_AUT_IDR = 5 ,
  AVC_AUT_SEI = 6 ,
  AVC_AUT_SEQPARAMS = 7 ,
  AVC_AUT_PICPARAMS = 8 ,
  AVC_AUT_DELIMITER = 9 ,
  AVC_AUT_END_SEQUENCE = 10 ,
  AVC_AUT_END_STREAM = 11 ,
  AVC_AUT_FILLER = 12 ,
  AVC_AUT_SEQPARAMSEXT = 13 ,
  AVC_AUT_PREFIX = 14 ,
  AVC_AUT_SUBSETPARAMS = 15 ,
  AVC_AUT_DEPTHPARAMS = 16 ,
  AVC_AUT_SLICE_NOPART = 19 ,
  AVC_AUT_SLICE_SCALE = 20 ,
  AVC_AUT_SLICE_EXTEND = 21 ,
  AVC_AUT_INVALID = 0xFF
}
 AVC access unit types. More...
 
enum  {
  AVC_SEI_BUF_PERIOD = 0 ,
  AVC_SEI_PIC_TIMING = 1 ,
  AVC_SEI_PAN_SCAN_RECT = 2 ,
  AVC_SEI_FILLER_PAYLOAD = 3 ,
  AVC_SEI_USER_DATA_REG = 4 ,
  AVC_SEI_USER_DATA_UNREG = 5 ,
  AVC_SEI_RECOVERY_POINT = 6 ,
  AVC_SEI_DEC_REF_PIC_MAR_REP = 7 ,
  AVC_SEI_SPARE_PIC = 8 ,
  AVC_SEI_SCENE_INFO = 9 ,
  AVC_SEI_SUB_SEQ_INFO = 10 ,
  AVC_SEI_SUB_SEQ_LAYER_CHARS = 11 ,
  AVC_SEI_SUB_SEQ_CHARS = 12 ,
  AVC_SEI_FFRAME_FREEZE = 13 ,
  AVC_SEI_FFRAME_FREEZE_RELEASE = 14 ,
  AVC_SEI_FFRAME_SNAPSHOT = 15 ,
  AVC_SEI_PROG_REF_SEG_START = 16 ,
  AVC_SEI_PROG_REF_SEG_END = 17 ,
  AVC_SEI_MOTION_CSLICE_GROUP_SET = 18 ,
  AVC_SEI_FILM_GRAIN_CHARS = 19 ,
  AVC_SEI_DEBLOCK_FILTER_DISP_PREF = 20 ,
  AVC_SEI_STEREO_VIDEO_INFO = 21 ,
  AVC_SEI_POST_FILTER_HINT = 22 ,
  AVC_SEI_TONE_MAPPING_INFO = 23 ,
  AVC_SEI_SCALABILITY_INFO = 24 ,
  AVC_SEI_SUB_PIC_SCALABLE_LAYER = 25 ,
  AVC_SEI_NON_REQUIRED_LAYER_REP = 26 ,
  AVC_SEI_PRIORITY_LAYER_INFO = 27 ,
  AVC_SEI_LAYERS_NOT_PRESENT = 28 ,
  AVC_SEI_LAYER_DEP_CHANGE = 29 ,
  AVC_SEI_SCALABLE_NESTING = 30 ,
  AVC_SEI_BASE_LAYER_TEMPORAL_HRD = 31 ,
  AVC_SEI_QUALITY_LAYER_INTEG_CHECK = 32 ,
  AVC_SEI_REDUNDANT_PIC_PROPERTY = 33 ,
  AVC_SEI_TL0_PICTURE_INDEX = 34 ,
  AVC_SEI_TL_SWITCHING_POINT = 35 ,
  AVC_SEI_PARALLEL_DECODING_INFO = 36 ,
  AVC_SEI_MVC_SCALABLE_NESTING = 37 ,
  AVC_SEI_VIEW_SCALABILITY_INFO = 38 ,
  AVC_SEI_MULTIVIEW_SCENE_INFO = 39 ,
  AVC_SEI_MULTIVIEW_ACQUISITION = 40 ,
  AVC_SEI_NON_REQUIRED_VIEW_COMP = 41 ,
  AVC_SEI_VIEW_DEPENDENCY_CHANGE = 42 ,
  AVC_SEI_OP_POINTS_NOT_PRESENT = 43 ,
  AVC_SEI_BASE_VIEW_TEMPORAL_HRD = 44 ,
  AVC_SEI_FRAME_PACKING_ARRANG = 45 ,
  AVC_SEI_MULTIVIEW_VIEW_POSITION = 46 ,
  AVC_SEI_DISPLAY_ORIENTATION = 47 ,
  AVC_SEI_MVCD_SCALABLE_NESTING = 48 ,
  AVC_SEI_MVCD_VIEW_SCALABILITY = 49 ,
  AVC_SEI_DEPTH_REPRESENTATION = 50 ,
  AVC_SEI_3D_REF_DISPLAYS_INFO = 51 ,
  AVC_SEI_DEPTH_TIMING = 52 ,
  AVC_SEI_DEPTH_SAMPLING_INFO = 53 ,
  AVC_SEI_CONSTR_DEPTH_PARAMSET_ID = 54 ,
  AVC_SEI_GREEN_METADATA = 56 ,
  AVC_SEI_MASTER_DISP_COLOUR_VOLUME = 137 ,
  AVC_SEI_COLOUR_REMAPPING_INFO = 142 ,
  AVC_SEI_CONTENT_LIGHT_LEVEL_INFO = 144 ,
  AVC_SEI_ALT_TRANSFER_CHARS = 147 ,
  AVC_SEI_AMBIENT_VIEWING_ENV = 148 ,
  AVC_SEI_CONTENT_COLOUR_VOLUME = 149 ,
  AVC_SEI_EQUIRECTANGULAR_PROJECT = 150 ,
  AVC_SEI_CUBEMAP_PROJECTION = 151 ,
  AVC_SEI_SPHERE_ROTATION = 154 ,
  AVC_SEI_REGIONWISE_PACKING = 155 ,
  AVC_SEI_OMNI_VIEWPORT = 156 ,
  AVC_SEI_ALTERNATIVE_DEPTH_INFO = 181 ,
  AVC_SEI_MANIFEST = 200 ,
  AVC_SEI_PREFIX_INDICATION = 201
}
 AVC SEI types. More...
 
enum  {
  AVC_PIC_TYPE_I = 0 ,
  AVC_PIC_TYPE_IP = 1 ,
  AVC_PIC_TYPE_IPB = 2 ,
  AVC_PIC_TYPE_SI = 3 ,
  AVC_PIC_TYPE_SIP = 4 ,
  AVC_PIC_TYPE_I_SI = 5 ,
  AVC_PIC_TYPE_IP_SIP = 6 ,
  AVC_PIC_TYPE_ANY = 7
}
 AVC primary picture types. More...
 
enum  {
  AVC_SLICE_P = 0 ,
  AVC_SLICE_B = 1 ,
  AVC_SLICE_I = 2 ,
  AVC_SLICE_SP = 3 ,
  AVC_SLICE_SI = 4 ,
  AVC_SLICE_ALL_P = 5 ,
  AVC_SLICE_ALL_B = 6 ,
  AVC_SLICE_ALL_I = 7 ,
  AVC_SLICE_ALL_SP = 8 ,
  AVC_SLICE_ALL_SI = 9
}
 AVC slice types. More...
 
enum  {
  HEVC_AUT_TRAIL_N = 0 ,
  HEVC_AUT_TRAIL_R = 1 ,
  HEVC_AUT_TSA_N = 2 ,
  HEVC_AUT_TSA_R = 3 ,
  HEVC_AUT_STSA_N = 4 ,
  HEVC_AUT_STSA_R = 5 ,
  HEVC_AUT_RADL_N = 6 ,
  HEVC_AUT_RADL_R = 7 ,
  HEVC_AUT_RASL_N = 8 ,
  HEVC_AUT_RASL_R = 9 ,
  HEVC_AUT_RSV_VCL_N10 = 10 ,
  HEVC_AUT_RSV_VCL_R11 = 11 ,
  HEVC_AUT_RSV_VCL_N12 = 12 ,
  HEVC_AUT_RSV_VCL_R13 = 13 ,
  HEVC_AUT_RSV_VCL_N14 = 14 ,
  HEVC_AUT_RSV_VCL_R15 = 15 ,
  HEVC_AUT_BLA_W_LP = 16 ,
  HEVC_AUT_BLA_W_RADL = 17 ,
  HEVC_AUT_BLA_N_LP = 18 ,
  HEVC_AUT_IDR_W_RADL = 19 ,
  HEVC_AUT_IDR_N_LP = 20 ,
  HEVC_AUT_CRA_NUT = 21 ,
  HEVC_AUT_RSV_IRAP_VCL22 = 22 ,
  HEVC_AUT_RSV_IRAP_VCL23 = 23 ,
  HEVC_AUT_RSV_VCL24 = 24 ,
  HEVC_AUT_RSV_VCL25 = 25 ,
  HEVC_AUT_RSV_VCL26 = 26 ,
  HEVC_AUT_RSV_VCL27 = 27 ,
  HEVC_AUT_RSV_VCL28 = 28 ,
  HEVC_AUT_RSV_VCL29 = 29 ,
  HEVC_AUT_RSV_VCL30 = 30 ,
  HEVC_AUT_RSV_VCL31 = 31 ,
  HEVC_AUT_VPS_NUT = 32 ,
  HEVC_AUT_SPS_NUT = 33 ,
  HEVC_AUT_PPS_NUT = 34 ,
  HEVC_AUT_AUD_NUT = 35 ,
  HEVC_AUT_EOS_NUT = 36 ,
  HEVC_AUT_EOB_NUT = 37 ,
  HEVC_AUT_FD_NUT = 38 ,
  HEVC_AUT_PREFIX_SEI_NUT = 39 ,
  HEVC_AUT_SUFFIX_SEI_NUT = 40 ,
  HEVC_AUT_RSV_NVCL41 = 41 ,
  HEVC_AUT_RSV_NVCL42 = 42 ,
  HEVC_AUT_RSV_NVCL43 = 43 ,
  HEVC_AUT_RSV_NVCL44 = 44 ,
  HEVC_AUT_RSV_NVCL45 = 45 ,
  HEVC_AUT_RSV_NVCL46 = 46 ,
  HEVC_AUT_RSV_NVCL47 = 47 ,
  HEVC_AUT_UNSPEC48 = 48 ,
  HEVC_AUT_UNSPEC63 = 63 ,
  HEVC_AUT_INVALID = 0xFF
}
 HEVC access unit types. More...
 
enum class  BitRateConfidence {
  LOW ,
  PCR_CONTINUOUS ,
  PCR_AVERAGE ,
  CLOCK ,
  HARDWARE ,
  OVERRIDE
}
 Confidence in a bitrate value. More...
 
enum  CaseSensitivity {
  CASE_SENSITIVE ,
  CASE_INSENSITIVE
}
 Case sensitivity used on string operations. More...
 
enum  CASFamily {
  CAS_OTHER = 0 ,
  CAS_MEDIAGUARD = 1 ,
  CAS_NAGRA = 2 ,
  CAS_VIACCESS = 3 ,
  CAS_THALESCRYPT = 4 ,
  CAS_SAFEACCESS = 5 ,
  CAS_WIDEVINE = 6 ,
  CAS_NDS = 7 ,
  CAS_IRDETO = 8 ,
  CAS_CONAX = 9
}
 Known Conditional Access Systems families. More...
 
enum class  CodecType {
  UNDEFINED ,
  MPEG1_VIDEO ,
  MPEG1_AUDIO ,
  MPEG2_VIDEO ,
  MPEG2_AUDIO ,
  MP3 ,
  AAC ,
  AC3 ,
  EAC3 ,
  AC4 ,
  MPEG4_VIDEO ,
  HEAAC ,
  J2K ,
  AVC ,
  HEVC ,
  VVC ,
  EVC ,
  LCEVC ,
  VP9 ,
  AV1 ,
  DTS ,
  DTSHD ,
  TELETEXT ,
  DVB_SUBTITLES ,
  AVS3
}
 Known video, audio or data encoding formats. More...
 
enum class  CommandStatus {
  CommandStatus::SUCCESS ,
  CommandStatus::EXIT ,
  CommandStatus::ERROR ,
  CommandStatus::FATAL
}
 Status of a command which is executed by a CommandLine object. More...
 
enum  DeliverySystem {
  DS_UNDEFINED ,
  DS_DVB_S ,
  DS_DVB_S2 ,
  DS_DVB_S_TURBO ,
  DS_DVB_T ,
  DS_DVB_T2 ,
  DS_DVB_C_ANNEX_A ,
  DS_DVB_C_ANNEX_B ,
  DS_DVB_C_ANNEX_C ,
  DS_DVB_C2 ,
  DS_DVB_H ,
  DS_ISDB_S ,
  DS_ISDB_T ,
  DS_ISDB_C ,
  DS_ATSC ,
  DS_ATSC_MH ,
  DS_DTMB ,
  DS_CMMB ,
  DS_DAB ,
  DS_DSS ,
  DS_DVB_C = DS_DVB_C_ANNEX_A
}
 Delivery systems. More...
 
enum class  DescriptorDuplication {
  ADD_ALWAYS ,
  ADD_OTHER ,
  REPLACE ,
  IGNORE ,
  MERGE
}
 What to do when a descriptor of same type is added twice in a list. More...
 
enum class  EITOptions {
  GEN_NONE = 0x0000 ,
  GEN_ACTUAL = 0x0001 ,
  GEN_OTHER = 0x0002 ,
  GEN_PF = 0x0004 ,
  GEN_SCHED = 0x0008 ,
  GEN_ALL = 0x000F ,
  LOAD_INPUT = 0x0010 ,
  PACKET_STUFFING = 0x0020 ,
  LAZY_SCHED_UPDATE = 0x0040 ,
  SYNC_VERSIONS = 0x0080
}
 EIT generation options. More...
 
enum class  EITProfile {
  EITProfile::PF_ACTUAL = 0 ,
  EITProfile::PF_OTHER = 1 ,
  EITProfile::SCHED_ACTUAL_PRIME = 2 ,
  EITProfile::SCHED_OTHER_PRIME = 3 ,
  EITProfile::SCHED_ACTUAL_LATER = 4 ,
  EITProfile::SCHED_OTHER_LATER = 5
}
 List of EIT sections repetition profiles. More...
 
enum  GuardInterval {
  GUARD_AUTO ,
  GUARD_1_32 ,
  GUARD_1_16 ,
  GUARD_1_8 ,
  GUARD_1_4 ,
  GUARD_1_128 ,
  GUARD_19_128 ,
  GUARD_19_256 ,
  GUARD_PN420 ,
  GUARD_PN595 ,
  GUARD_PN945
}
 Guard interval (OFDM) More...
 
enum  Hierarchy {
  HIERARCHY_AUTO ,
  HIERARCHY_NONE ,
  HIERARCHY_1 ,
  HIERARCHY_2 ,
  HIERARCHY_4
}
 Hierarchy (OFDM) More...
 
enum  InnerFEC {
  FEC_NONE ,
  FEC_AUTO ,
  FEC_1_2 ,
  FEC_2_3 ,
  FEC_3_4 ,
  FEC_4_5 ,
  FEC_5_6 ,
  FEC_6_7 ,
  FEC_7_8 ,
  FEC_8_9 ,
  FEC_9_10 ,
  FEC_3_5 ,
  FEC_1_3 ,
  FEC_1_4 ,
  FEC_2_5 ,
  FEC_5_11
}
 Inner Forward Error Correction. More...
 
enum  Modulation {
  QPSK ,
  PSK_8 ,
  QAM_AUTO ,
  QAM_16 ,
  QAM_32 ,
  QAM_64 ,
  QAM_128 ,
  QAM_256 ,
  VSB_8 ,
  VSB_16 ,
  APSK_16 ,
  APSK_32 ,
  DQPSK ,
  QAM_4_NR
}
 Modulation types. More...
 
enum class  NamesFlags : uint16_t {
  NamesFlags::NAME = 0x0000 ,
  NamesFlags::VALUE = 0x0001 ,
  NamesFlags::FIRST = 0x0002 ,
  NamesFlags::HEXA = 0x0004 ,
  NamesFlags::DECIMAL = 0x0008 ,
  NamesFlags::BOTH = HEXA | DECIMAL ,
  NamesFlags::HEXA_FIRST = FIRST | HEXA ,
  NamesFlags::DECIMAL_FIRST = FIRST | DECIMAL ,
  NamesFlags::BOTH_FIRST = FIRST | HEXA | DECIMAL ,
  NamesFlags::ALTERNATE = 0x0010 ,
  NamesFlags::NAME_OR_VALUE = 0x0020
}
 Flags to be used in the formating of names in NamesFile. More...
 
enum class  OUI {
  DVB = 0x00015A ,
  SKARDIN = 0x001222 ,
  LOGIWAYS = 0x002660
}
 Some IEEE-assigned Organizationally Unique Identifier (OUI) values. More...
 
enum  PcapLinkType : uint16_t {
  LINKTYPE_NULL = 0 ,
  LINKTYPE_ETHERNET = 1 ,
  LINKTYPE_AX25 = 3 ,
  LINKTYPE_IEEE802_5 = 6 ,
  LINKTYPE_ARCNET_BSD = 7 ,
  LINKTYPE_SLIP = 8 ,
  LINKTYPE_PPP = 9 ,
  LINKTYPE_FDDI = 10 ,
  LINKTYPE_PPP_HDLC = 50 ,
  LINKTYPE_PPP_ETHER = 51 ,
  LINKTYPE_ATM_RFC1483 = 100 ,
  LINKTYPE_RAW = 101 ,
  LINKTYPE_C_HDLC = 104 ,
  LINKTYPE_IEEE802_11 = 105 ,
  LINKTYPE_FRELAY = 107 ,
  LINKTYPE_LOOP = 108 ,
  LINKTYPE_LINUX_SLL = 113 ,
  LINKTYPE_LTALK = 114 ,
  LINKTYPE_PFLOG = 117 ,
  LINKTYPE_IEEE802_11_PRISM = 119 ,
  LINKTYPE_IP_OVER_FC = 122 ,
  LINKTYPE_SUNATM = 123 ,
  LINKTYPE_IEEE802_11_RADIOTAP = 127 ,
  LINKTYPE_ARCNET_LINUX = 129 ,
  LINKTYPE_APPLE_IP_OVER_IEEE1394 = 138 ,
  LINKTYPE_MTP2_WITH_PHDR = 139 ,
  LINKTYPE_MTP2 = 140 ,
  LINKTYPE_MTP3 = 141 ,
  LINKTYPE_SCCP = 142 ,
  LINKTYPE_DOCSIS = 143 ,
  LINKTYPE_LINUX_IRDA = 144 ,
  LINKTYPE_USER0 = 147 ,
  LINKTYPE_USER15 = 162 ,
  LINKTYPE_IEEE802_11_AVS = 163 ,
  LINKTYPE_BACNET_MS_TP = 165 ,
  LINKTYPE_PPP_PPPD = 166 ,
  LINKTYPE_GPRS_LLC = 169 ,
  LINKTYPE_GPF_T = 170 ,
  LINKTYPE_GPF_F = 171 ,
  LINKTYPE_LINUX_LAPD = 177 ,
  LINKTYPE_MFR = 182 ,
  LINKTYPE_BLUETOOTH_HCI_H4 = 187 ,
  LINKTYPE_USB_LINUX = 189 ,
  LINKTYPE_PPI = 192 ,
  LINKTYPE_IEEE802_15_4_WITHFCS = 195 ,
  LINKTYPE_SITA = 196 ,
  LINKTYPE_ERF = 197 ,
  LINKTYPE_BLUETOOTH_HCI_H4_WITH_PHDR = 201 ,
  LINKTYPE_AX25_KISS = 202 ,
  LINKTYPE_LAPD = 203 ,
  LINKTYPE_PPP_WITH_DIR = 204 ,
  LINKTYPE_C_HDLC_WITH_DIR = 205 ,
  LINKTYPE_FRELAY_WITH_DIR = 206 ,
  LINKTYPE_LAPB_WITH_DIR = 207 ,
  LINKTYPE_IPMB_LINUX = 209 ,
  LINKTYPE_FLEXRAY = 210 ,
  LINKTYPE_IEEE802_15_4_NONASK_PHY = 215 ,
  LINKTYPE_USB_LINUX_MMAPPED = 220 ,
  LINKTYPE_FC_2 = 224 ,
  LINKTYPE_FC_2_WITH_FRAME_DELIMS = 225 ,
  LINKTYPE_IPNET = 226 ,
  LINKTYPE_CAN_SOCKETCAN = 227 ,
  LINKTYPE_IPV4 = 228 ,
  LINKTYPE_IPV6 = 229 ,
  LINKTYPE_IEEE802_15_4_NOFCS = 230 ,
  LINKTYPE_DBUS = 231 ,
  LINKTYPE_DVB_CI = 235 ,
  LINKTYPE_MUX27010 = 236 ,
  LINKTYPE_STANAG_5066_D_PDU = 237 ,
  LINKTYPE_NFLOG = 239 ,
  LINKTYPE_NETANALYZER = 240 ,
  LINKTYPE_NETANALYZER_TRANSPARENT = 241 ,
  LINKTYPE_IPOIB = 242 ,
  LINKTYPE_MPEG_2_TS = 243 ,
  LINKTYPE_NG40 = 244 ,
  LINKTYPE_NFC_LLCP = 245 ,
  LINKTYPE_INFINIBAND = 247 ,
  LINKTYPE_SCTP = 248 ,
  LINKTYPE_USBPCAP = 249 ,
  LINKTYPE_RTAC_SERIAL = 250 ,
  LINKTYPE_BLUETOOTH_LE_LL = 251 ,
  LINKTYPE_NETLINK = 253 ,
  LINKTYPE_BLUETOOTH_LINUX_MONITOR = 254 ,
  LINKTYPE_BLUETOOTH_BREDR_BB = 255 ,
  LINKTYPE_BLUETOOTH_LE_LL_WITH_PHDR = 256 ,
  LINKTYPE_PROFIBUS_DL = 257 ,
  LINKTYPE_PKTAP = 258 ,
  LINKTYPE_EPON = 259 ,
  LINKTYPE_IPMI_HPM_2 = 260 ,
  LINKTYPE_ZWAVE_R1_R2 = 261 ,
  LINKTYPE_ZWAVE_R3 = 262 ,
  LINKTYPE_WATTSTOPPER_DLM = 263 ,
  LINKTYPE_ISO_14443 = 264 ,
  LINKTYPE_RDS = 265 ,
  LINKTYPE_USB_DARWIN = 266 ,
  LINKTYPE_SDLC = 268 ,
  LINKTYPE_LORATAP = 270 ,
  LINKTYPE_VSOCK = 271 ,
  LINKTYPE_NORDIC_BLE = 272 ,
  LINKTYPE_DOCSIS31_XRA31 = 273 ,
  LINKTYPE_ETHERNET_MPACKET = 274 ,
  LINKTYPE_DISPLAYPORT_AUX = 275 ,
  LINKTYPE_LINUX_SLL2 = 276 ,
  LINKTYPE_OPENVIZSLA = 278 ,
  LINKTYPE_EBHSCR = 279 ,
  LINKTYPE_VPP_DISPATCH = 280 ,
  LINKTYPE_DSA_TAG_BRCM = 281 ,
  LINKTYPE_DSA_TAG_BRCM_PREPEND = 282 ,
  LINKTYPE_IEEE802_15_4_TAP = 283 ,
  LINKTYPE_DSA_TAG_DSA = 284 ,
  LINKTYPE_DSA_TAG_EDSA = 285 ,
  LINKTYPE_ELEE = 286 ,
  LINKTYPE_Z_WAVE_SERIAL = 287 ,
  LINKTYPE_USB_2_0 = 288 ,
  LINKTYPE_ATSC_ALP = 289 ,
  LINKTYPE_ETW = 290 ,
  LINKTYPE_UNKNOWN = 0xFFFF
}
 List of pcap LINKTYPE values. More...
 
enum  PcapNgBlockType : uint32_t {
  PCAPNG_SECTION_HEADER = PCAPNG_MAGIC ,
  PCAPNG_INTERFACE_DESC = 0x00000001 ,
  PCAPNG_OBSOLETE_PACKET = 0x00000002 ,
  PCAPNG_SIMPLE_PACKET = 0x00000003 ,
  PCAPNG_NAME_RES = 0x00000004 ,
  PCAPNG_INTERFACE_STAT = 0x00000005 ,
  PCAPNG_ENHANCED_PACKET = 0x00000006 ,
  PCAPNG_SYSTEMD_JOURNAL = 0x00000009 ,
  PCAPNG_DECRYPT_SECRETS = 0x0000000A ,
  PCAPNG_CUSTOM = 0x00000BAD ,
  PCAPNG_CUSTOM_NOCOPY = 0x40000BAD
}
 List of pcap-ng block types. More...
 
enum  PcapNgOptionCode : uint32_t {
  PCAPNG_OPT_ENDOFOPT = 0 ,
  PCAPNG_OPT_COMMENT = 1 ,
  PCAPNG_SHB_HARDWARE = 2 ,
  PCAPNG_SHB_OS = 3 ,
  PCAPNG_SHB_USERAPPL = 4 ,
  PCAPNG_IF_NAME = 2 ,
  PCAPNG_IF_DESCRIPTION = 3 ,
  PCAPNG_IF_IPV4ADDR = 4 ,
  PCAPNG_IF_IPV6ADDR = 5 ,
  PCAPNG_IF_MACADDR = 6 ,
  PCAPNG_IF_EUIADDR = 7 ,
  PCAPNG_IF_SPEED = 8 ,
  PCAPNG_IF_TSRESOL = 9 ,
  PCAPNG_IF_TZONE = 10 ,
  PCAPNG_IF_FILTER = 11 ,
  PCAPNG_IF_OS = 12 ,
  PCAPNG_IF_FCSLEN = 13 ,
  PCAPNG_IF_TSOFFSET = 14 ,
  PCAPNG_IF_HARDWARE = 15 ,
  PCAPNG_IF_TXSPEED = 16 ,
  PCAPNG_IF_RXSPEED = 17
}
 List of pcap-ng option codes. More...
 
enum class  PIDClass {
  UNDEFINED ,
  PSI ,
  EMM ,
  ECM ,
  VIDEO ,
  AUDIO ,
  SUBTITLES ,
  DATA ,
  STUFFING
}
 Classification of PID's. More...
 
enum  Pilot {
  PILOT_AUTO ,
  PILOT_ON ,
  PILOT_OFF
}
 Pilot (DVB-S2) More...
 
enum  PLSMode {
  PLS_ROOT = 0 ,
  PLS_GOLD = 1 ,
  PLS_COMBO = 2
}
 Physical Layer Scrambling (PLS) modes for DVB-S2. More...
 
enum class  PluginType {
  PluginType::INPUT ,
  PluginType::OUTPUT ,
  PluginType::PROCESSOR
}
 Each plugin has one of the following types. More...
 
enum  Polarization {
  POL_NONE ,
  POL_AUTO ,
  POL_HORIZONTAL ,
  POL_VERTICAL ,
  POL_LEFT ,
  POL_RIGHT
}
 Polarization. More...
 
enum  ResolveSymbolicLinksFlags {
  LINK_SINGLE = 0x0000 ,
  LINK_RECURSE = 0x0001 ,
  LINK_ABSOLUTE = 0x0002
}
 Flags for ResolveSymbolicLinks(). More...
 
enum  RollOff {
  ROLLOFF_AUTO ,
  ROLLOFF_35 ,
  ROLLOFF_25 ,
  ROLLOFF_20
}
 Roll-off (DVB-S2) More...
 
enum class  SharedLibraryFlags : uint16_t {
  NONE = 0x00 ,
  PERMANENT = 0x01
}
 Bit masks options to load shared libraries. More...
 
enum class  ShareMode {
  COPY ,
  SHARE
}
 Enumeration type used to indicate if the data referenced by a pointer shall be copied or shared. More...
 
enum  SpectralInversion {
  SPINV_OFF ,
  SPINV_ON ,
  SPINV_AUTO
}
 Spectral inversion. More...
 
enum class  SRTSocketMode : int {
  DEFAULT = -1 ,
  LISTENER = 0 ,
  CALLER = 1 ,
  RENDEZVOUS = 2 ,
  LEN = 3
}
 Secure Reliable Transport (SRT) socket mode. More...
 
enum class  SRTStatMode : uint16_t {
  NONE = 0x0000 ,
  RECEIVE = 0x0001 ,
  SEND = 0x0002 ,
  TOTAL = 0x0004 ,
  INTERVAL = 0x0008 ,
  ALL = 0x000F
}
 Secure Reliable Transport (SRT) statistics mode. More...
 
enum class  Standards : uint16_t {
  Standards::NONE = 0x00 ,
  Standards::MPEG = 0x01 ,
  Standards::DVB = 0x02 ,
  Standards::SCTE = 0x04 ,
  Standards::ATSC = 0x08 ,
  Standards::ISDB = 0x10 ,
  Standards::JAPAN = 0x20 ,
  Standards::ABNT = 0x40
}
 Bit masks for standards, used to qualify the signalization. More...
 
enum  StringComparison : uint32_t {
  SCOMP_DEFAULT = 0x0000 ,
  SCOMP_CASE_INSENSITIVE = 0x0001 ,
  SCOMP_IGNORE_BLANKS = 0x0002 ,
  SCOMP_NUMERIC = 0x0004
}
 Options used on string comparisons. More...
 
enum  StringDirection {
  LEFT_TO_RIGHT ,
  RIGHT_TO_LEFT
}
 Direction used on string operations. More...
 
enum class  T2MIPacketType : uint8_t {
  BASEBAND_FRAME = 0x00 ,
  AUX_IQ_DATA = 0x01 ,
  ARBITRARY_CELL = 0x02 ,
  L1_CURRENT = 0x10 ,
  L1_FUTURE = 0x11 ,
  P2_BIAS_BALANCING = 0x12 ,
  DVBT2_TIMESTAMP = 0x20 ,
  INDIVIDUAL_ADDRESSING = 0x21 ,
  FEF_NULL = 0x30 ,
  FEF_IQ_DATA = 0x31 ,
  FEF_COMPOSITE = 0x32 ,
  FEF_SUBPART = 0x33 ,
  INVALID_TYPE = 0xFF
}
 T2-MI packet types. More...
 
enum class  TableScope {
  NONE ,
  ACTUAL ,
  ALL
}
 Define the scope of tables which can apply to actual or other TS. More...
 
enum class  TeletextDataUnitId : uint8_t {
  NON_SUBTITLE = 0x02 ,
  SUBTITLE = 0x03 ,
  INVERTED = 0x0C ,
  VPS = 0xC3 ,
  CLOSED_CAPTIONS = 0xC5 ,
  STUFFING = 0xFF
}
 Teletext data unit ids. More...
 
enum class  TimeSource : uint8_t {
  UNDEFINED = 0 ,
  HARDWARE ,
  KERNEL ,
  TSP ,
  RTP ,
  SRT ,
  M2TS ,
  PCR ,
  DTS ,
  PTS
}
 Sources of time information for transport streams. More...
 
enum  TransmissionMode {
  TM_AUTO ,
  TM_2K ,
  TM_4K ,
  TM_8K ,
  TM_2KI ,
  TM_4KI ,
  TM_1K ,
  TM_16K ,
  TM_32K ,
  TM_C1 ,
  TM_C3780
}
 Transmission mode (OFDM) More...
 
enum class  Tristate {
  Maybe = -1 ,
  False = 0 ,
  True = 1
}
 Tristate boolean. More...
 
enum class  TSDatagramOutputOptions {
  NONE = 0x0000 ,
  ALLOW_RTP = 0x0001 ,
  ALWAYS_BURST = 0x0002
}
 Options which alter the behavior of the output datagrams. More...
 
enum class  TSPacketFormat {
  AUTODETECT ,
  TS ,
  M2TS ,
  RS204 ,
  DUCK
}
 Transport stream file formats. More...
 
enum  TunerType {
  TT_UNDEFINED = DS_UNDEFINED ,
  TT_DVB_S = DS_DVB_S ,
  TT_DVB_T = DS_DVB_T ,
  TT_DVB_C = DS_DVB_C ,
  TT_ISDB_S = DS_ISDB_S ,
  TT_ISDB_T = DS_ISDB_T ,
  TT_ISDB_C = DS_ISDB_C ,
  TT_ATSC = DS_ATSC
}
 A subset of ts::DeliverySystem describing types of tuners.
 

Functions

template<typename INT , typename std::enable_if< std::is_integral< INT >::value &&std::is_unsigned< INT >::value, int >::type = 0>
INT abs (INT a)
 Absolute value of integer types, also working on unsigned types.
 
uint64_t AbsDiffPCR (uint64_t pcr1, uint64_t pcr2)
 Compute the absolute value of the difference between two PCR's, regardless of their order.
 
UString AbsoluteFilePath (const UString &path, const UString &base=UString())
 Build the absolute form of a file path.
 
UString AccessUnitTypeName (CodecType codec, uint8_t ut, NamesFlags flags=NamesFlags::NAME)
 Name of AVC/HEVC/VVC access unit (aka "NALunit") type.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value, int >::type = 0>
bool add_overflow (INT a, INT b) platform_specific
 Check if an integer addition generates an overflow.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value &&std::is_unsigned< INT >::value, int >::type = 0>
bool add_overflow (INT a, INT b, INT res)
 Check if an integer addition generates an overflow.
 
UString AddPathSuffix (const UString &path, const UString &suffix)
 Conditionally add a suffix to a file path.
 
bool And (bool arg1, bool arg2)
 BoolPredicate "and".
 
template<typename ELEMENT , class CONTAINER >
bool AppendUnique (CONTAINER &container, const ELEMENT &e)
 Append an element into a container if not already present in the container.
 
BandWidth BandWidthCodeFromHz (uint32_t hz)
 Get the bandwidth code from a value in Hz (deprecated).
 
uint32_t BandWidthValueHz (BandWidth bw)
 Get the bandwidth value in Hz (deprecated).
 
UString BaseName (const UString &path, const UString &suffix=UString())
 Return the base file name of a file path ("dir/foo.bar" => "foo.bar").
 
void BCDToString (std::string &str, const uint8_t *bcd, size_t bcd_count, int decimal, bool left_justified=true)
 Decode a string representation of a variable-length Binary Coded Decimal (BCD) encoded integer.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value &&std::is_unsigned< INT >::value >::type * = nullptr>
size_t BitSize (INT x)
 Get the size in bits of an integer value.
 
uint32_t BitsPerSymbol (Modulation mod)
 Compute the number of bits per symbol for a specified modulation.
 
template<typename INT1 , typename INT2 , typename std::enable_if< std::is_integral< INT1 >::value &&std::is_integral< INT2 >::value, int >::type = 0>
bool bound_check (INT2 x)
 Integer cross-type bound check.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value &&std::is_unsigned< INT >::value >::type * = nullptr>
INT bounded_add (INT a, INT b)
 Perform a bounded addition without overflow.
 
template<typename INT1 , typename INT2 , typename std::enable_if< std::is_integral< INT1 >::value &&std::is_integral< INT2 >::value, int >::type = 0>
INT1 bounded_cast (INT2 x)
 Bounded integer cast.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value &&std::is_unsigned< INT >::value >::type * = nullptr>
INT bounded_sub (INT a, INT b)
 Perform a bounded subtraction without overflow.
 
uint16_t ByteSwap16 (uint16_t x)
 Inlined function performing byte swap on 16-bit integer data.
 
uint32_t ByteSwap24 (uint32_t x)
 Inlined function performing byte swap on 24-bit integer data.
 
uint32_t ByteSwap32 (uint32_t x)
 Inlined function performing byte swap on 32-bit integer data.
 
uint64_t ByteSwap64 (uint64_t x)
 Inlined function performing byte swap on 64-bit integer data.
 
UString CallerLibraryFile ()
 Get the name of the executable or shared library file containing the caller code.
 
UString CanonicalGUID (const ::GUID &guid)
 Get a "canonical" version of a GUID (Windows-specific).
 
UString CanonicalGUID (const UString &guid)
 Get a "canonical" version of a GUID string (Windows-specific).
 
UString CASFamilyName (CASFamily cas)
 Name of Conditional Access Families.
 
CASFamily CASFamilyOf (uint16_t ca_system_id)
 Return a CAS family from a CA system id.
 
bool CheckModEnum (int value, const UString &name, const Enumeration &conv, Report &report)
 Check if an enumeration value is supported by the native implementation.
 
template<typename ENUM , typename std::enable_if< std::is_integral< ENUM >::value||std::is_enum< ENUM >::value >::type * = nullptr>
bool CheckModVar (const Variable< ENUM > &value, const UString &name, const Enumeration &conv, Report &report)
 Check if an optional enumeration value is supported by the native implementation.
 
void CheckNonNull (const void *ptr)
 Check the value of a pointer and abort the application when zero.
 
UString ClassName (const std::type_info &info)
 Get the name of a class from the type_info of an object.
 
UString CleanupFilePath (const UString &path)
 Cleanup a file path.
 
bool CodecTypeIsAudio (CodecType ct)
 Check if a codec type value indicates an audio stream.
 
bool CodecTypeIsSubtitles (CodecType ct)
 Check if a codec type value indicates a subtitle stream.
 
bool CodecTypeIsVideo (CodecType ct)
 Check if a codec type value indicates a video stream.
 
IOManipulatorProxy< TextFormatter, size_t > column (size_t col)
 I/O manipulator for TextFormatter: move to a given column.
 
bool ComExpose (::IUnknown *object, const ::IID &iid)
 Check if a COM object exposes an interface (Windows-specific).
 
UString ComMessage (::HRESULT status)
 Format the message for a COM status (Windows-specific).
 
bool ComSuccess (::HRESULT status, const UChar *message, Report &report)
 Check a COM status (Windows-specific).
 
bool ComSuccess (::HRESULT status, const UString &message, Report &report)
 Check a COM status (Windows-specific).
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value >::type * = nullptr>
INT CondByteSwap (INT x)
 Template function performing conditional byte swap on integer data to obtain the data in big endian representation.
 
uint16_t CondByteSwap16 (uint16_t x)
 Inlined function performing conditional byte swap on 16-bit integer data to obtain the data in big endian representation.
 
uint16_t CondByteSwap16BE (uint16_t x)
 Inlined function performing conditional byte swap on 16-bit integer data to obtain the data in big endian representation.
 
uint16_t CondByteSwap16LE (uint16_t x)
 Inlined function performing conditional byte swap on 16-bit integer data to obtain the data in little endian representation.
 
uint32_t CondByteSwap24 (uint32_t x)
 Inlined function performing conditional byte swap on 24-bit integer data to obtain the data in big endian representation.
 
uint32_t CondByteSwap24BE (uint32_t x)
 Inlined function performing conditional byte swap on 24-bit integer data to obtain the data in big endian representation.
 
uint32_t CondByteSwap24LE (uint32_t x)
 Inlined function performing conditional byte swap on 24-bit integer data to obtain the data in little endian representation.
 
uint32_t CondByteSwap32 (uint32_t x)
 Inlined function performing conditional byte swap on 32-bit integer data to obtain the data in big endian representation.
 
uint32_t CondByteSwap32BE (uint32_t x)
 Inlined function performing conditional byte swap on 32-bit integer data to obtain the data in big endian representation.
 
uint32_t CondByteSwap32LE (uint32_t x)
 Inlined function performing conditional byte swap on 32-bit integer data to obtain the data in little endian representation.
 
uint64_t CondByteSwap64 (uint64_t x)
 Inlined function performing conditional byte swap on 64-bit integer data to obtain the data in big endian representation.
 
uint64_t CondByteSwap64BE (uint64_t x)
 Inlined function performing conditional byte swap on 64-bit integer data to obtain the data in big endian representation.
 
uint64_t CondByteSwap64LE (uint64_t x)
 Inlined function performing conditional byte swap on 64-bit integer data to obtain the data in little endian representation.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value >::type * = nullptr>
INT CondByteSwapBE (INT x)
 Template function performing conditional byte swap on integer data to obtain the data in big endian representation.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value >::type * = nullptr>
INT CondByteSwapLE (INT x)
 Template function performing conditional byte swap on integer data to obtain the data in little endian representation.
 
template<class CONTAINER , class VALUE >
bool Contains (const CONTAINER &container, const VALUE &value)
 Check if a value is present in a container.
 
template<class VALUE >
bool Contains (const std::vector< VALUE > &container, const VALUE &value)
 Check if a value is present in a vector container.
 
::HRESULT CopyMediaType (::AM_MEDIA_TYPE &dst, const ::AM_MEDIA_TYPE &src)
 Copy a media type to another (Windows-specific).
 
bool CreateDirectory (const UString &path, bool intermediate=false, Report &report=(*(static_cast< ts::Report * >(ts::CerrReport::Instance()))))
 Create a directory.
 
bool CreateLocator (DuckContext &duck, ComPtr<::IDigitalLocator > &locator, const ModulationArgs &params)
 Create a Locator object for tuning parameters.
 
bool CreateLocatorATSC (DuckContext &duck, ComPtr<::IDigitalLocator > &locator, const ModulationArgs &params)
 Create an IDigitalLocator object for ATSC parameters.
 
bool CreateLocatorDVBC (DuckContext &duck, ComPtr<::IDigitalLocator > &locator, const ModulationArgs &params)
 Create an IDigitalLocator object for DVB-C parameters.
 
bool CreateLocatorDVBS (DuckContext &duck, ComPtr<::IDigitalLocator > &locator, const ModulationArgs &params)
 Create an IDigitalLocator object for DVB-S parameters.
 
bool CreateLocatorDVBT (DuckContext &duck, ComPtr<::IDigitalLocator > &locator, const ModulationArgs &params)
 Create an IDigitalLocator object for DVB-T parameters.
 
bool CreateLocatorISDBS (DuckContext &duck, ComPtr<::IDigitalLocator > &locator, const ModulationArgs &params)
 Create an IDigitalLocator object for ISDB-S parameters.
 
bool CreateTuneRequest (DuckContext &duck, ComPtr<::ITuneRequest > &request, ::ITuningSpace *tuning_space, const ModulationArgs &params)
 Create a DirectShow tune request object from tuning parameters.
 
ProcessId CurrentProcessId ()
 Get the current process id.
 
UString CurrentWorkingDirectory ()
 Get the current working directory.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value, int >::type = 0>
void debug_thow_neg_overflow (INT a)
 In debug mode, throw an exception if the negation (opposite sign) of an integer generates an overflow.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value, int >::type = 0>
void debug_throw_add_overflow (INT a, INT b, INT res)
 In debug mode, throw an exception if an integer addition generates an overflow.
 
template<typename INT1 , typename INT2 , typename std::enable_if< std::is_integral< INT1 >::value &&std::is_integral< INT2 >::value, int >::type = 0>
void debug_throw_bound_check (INT2 x)
 In debug mode, throw an exception if an integer value does not fall into the range of another integer type.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value, int >::type = 0>
void debug_throw_div_zero (INT den)
 In debug mode, throw an exception if the denominator of an integer division is zero.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value, int >::type = 0>
void debug_throw_mul_overflow (INT a, INT b, INT res)
 In debug mode, throw an exception if an integer multiplication generates an overflow.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value, int >::type = 0>
void debug_throw_sub_overflow (INT a, INT b, INT res)
 In debug mode, throw an exception if an integer substraction generates an overflow.
 
uint32_t DecodeBCD (const uint8_t *bcd, size_t bcd_count, bool left_justified=true)
 Return the decimal value of a Binary Coded Decimal (BCD) encoded string.
 
int DecodeBCD (uint8_t b)
 Return the decimal value of a Binary Coded Decimal (BCD) encoded byte.
 
bool DecodeMJD (const uint8_t *mjd, size_t mjd_size, Time &time)
 Convert a Modified Julian Date (MJD) into a ts::Time.
 
bool DecomposePrecombined (UChar c, UChar &letter, UChar &mark)
 Decompose a precombined character into its base letter and non-spacing diacritical mark.
 
void DefineLegacyBandWidthArg (Args &args, const UChar *name, UChar short_name=0, BandWidth dvbt_default=0, BandWidth isdbt_default=0)
 Add a command line option definition for bandwidth.
 
void DefineTSPacketFormatInputOption (Args &args, UChar short_name=0, const UChar *name=u"format")
 Add the definition of a --format option for TS packet format in input files.
 
void DefineTSPacketFormatOutputOption (Args &args, UChar short_name=0, const UChar *name=u"format")
 Add the definition of a --format option for TS packet format in output files.
 
bool DeleteEnvironment (const UString &name)
 Delete an environment variable.
 
bool DeleteFile (const UString &path, Report &report=(*(static_cast< ts::Report * >(ts::CerrReport::Instance()))))
 Delete a file or directory.
 
void DeleteMediaType (::AM_MEDIA_TYPE *media_type)
 Delete a heap-allocated AM_MEDIA_TYPE structure (Windows-specific).
 
uint64_t DiffPCR (uint64_t pcr1, uint64_t pcr2)
 Compute the difference between PCR2 and PCR1.
 
uint64_t DiffPTS (uint64_t pts1, uint64_t pts2)
 Compute the difference between PTS2 and PTS1.
 
UString DirectoryName (const UString &path)
 Return the directory name of a file path ("dir/foo.bar" => "dir").
 
UString DVBSystemTypeName (::DVBSystemType type)
 Get the name for a DirectShow DVBSystemType value (Windows-specific).
 
uint8_t EncodeBCD (int i)
 Return a one-byte Binary Coded Decimal (BCD) representation of an integer.
 
void EncodeBCD (uint8_t *bcd, size_t bcd_count, uint32_t value, bool left_justified=true, uint8_t pad_nibble=0)
 Encode a Binary Coded Decimal (BCD) string.
 
bool EncodeMJD (const Time &time, uint8_t *mjd, size_t mjd_size)
 Convert a ts::Time into a Modified Julian Date (MJD).
 
std::ostream & endl (std::ostream &os)
 I/O manipulator for TextFormatter: insert an end-of-line, according to the current end-of-line mode.
 
template<typename T , class UnaryPredicate >
bool EnumerateCombinations (const std::set< T > &values, const std::set< T > &fixed, size_t size, UnaryPredicate predicate)
 Enumerate all 'k'-elements combinations of a 'n'-elements set.
 
bool EnumerateDevicesByClass (const ::CLSID &clsid, std::vector< ComPtr<::IMoniker > > &monikers, Report &report, ::DWORD flags=0)
 Enumerate all devices of the specified class.
 
bool EnvironmentExists (const UString &varname)
 Check if an environment variable exists.
 
UString ExecutableFile ()
 Get the name of the current application executable file.
 
UString ExpandEnvironment (const UString &path)
 Expand environment variables inside a file path (or any string).
 
template<class CONTAINER >
bool ExpandWildcard (CONTAINER &container, const UString &pattern)
 Get all files matching a specified wildcard pattern.
 
template<class CONTAINER >
bool ExpandWildcardAndAppend (CONTAINER &container, const UString &pattern)
 Get all files matching a specified wildcard pattern and append them into a container.
 
void FatalError (const char *message, size_t length)
 Handle a fatal error.
 
void FatalMemoryAllocation ()
 Handle fatal memory allocation failure.
 
uint32_t FECDivider (InnerFEC fec)
 Compute the divider of a FEC value.
 
uint32_t FECMultiplier (InnerFEC fec)
 Compute the multiplier of a FEC value.
 
bool FileExists (const UString &path)
 Check if a file or directory exists.
 
UString FormatGUID (const ::GUID &guid, bool with_braces=true)
 Format a GUID as string (Windows-specific).
 
void FreeMediaType (::AM_MEDIA_TYPE &media_type)
 Free an existing media type, ie free resources it holds (Windows-specific).
 
UChar FromHTML (const UString &entity)
 Convert the body on an HTML entity into a character.
 
char32_t FromSurrogatePair (UChar lead, UChar trail)
 Build a 32-bit Unicode code point from a surrogate pair.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value &&std::is_unsigned< INT >::value >::type * = nullptr>
INT GCD (INT x, INT y)
 Compute a greatest common denominator (GCD).
 
UString GetDektecVersions ()
 Get the versions of Dektec API and drivers in one single string.
 
void GetDektecVersions (std::map< UString, UString > &versions)
 Get the versions of Dektec API and drivers.
 
UString GetEnvironment (const UString &varname, const UString &defvalue=UString())
 Get the value of an environment variable.
 
void GetEnvironment (Environment &env)
 Get the content of the entire environment (all environment variables).
 
template<class CONTAINER >
void GetEnvironmentPath (CONTAINER &container, const UString &name, const UString &def=UString())
 Get the value of an environment variable containing a search path.
 
template<class CONTAINER >
void GetEnvironmentPathAppend (CONTAINER &container, const UString &name, const UString &def=UString())
 Get the value of an environment variable containing a search path.
 
Time GetFileModificationTimeLocal (const UString &path)
 Get the local time of the last modification of a file.
 
Time GetFileModificationTimeUTC (const UString &path)
 Get the UTC time of the last modification of a file.
 
int64_t GetFileSize (const UString &path)
 Get the size in bytes of a file.
 
ieee_float32_t GetFloat32 (const void *p)
 Function getting a 32-bit IEEE float from serialized data in big endian representation.
 
ieee_float32_t GetFloat32BE (const void *p)
 Function getting a 32-bit IEEE float from serialized data in big endian representation.
 
ieee_float32_t GetFloat32LE (const void *p)
 Function getting a 32-bit IEEE float from serialized data in little endian representation.
 
ieee_float64_t GetFloat64 (const void *p)
 Function getting a 64-bit IEEE float from serialized data in big endian representation.
 
ieee_float64_t GetFloat64BE (const void *p)
 Function getting a 64-bit IEEE float from serialized data in big endian representation.
 
ieee_float64_t GetFloat64LE (const void *p)
 Function getting a 64-bit IEEE float from serialized data in little endian representation.
 
::HANDLE GetHandleFromObject (::IUnknown *obj, Report &report)
 Get the handle of a COM object (Windows-specific).
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value >::type * = nullptr>
INT GetInt (const void *p)
 Template function getting an integer from serialized data in big endian representation.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value >::type * = nullptr>
void GetInt (const void *p, INT &i)
 Template function getting an integer from serialized data in big endian representation.
 
int16_t GetInt16 (const void *p)
 Function getting a 16-bit signed integer from serialized data in big endian representation.
 
void GetInt16 (const void *p, int16_t &i)
 Function getting a 16-bit signed integer from serialized data in big endian representation.
 
int16_t GetInt16BE (const void *p)
 Function getting a 16-bit signed integer from serialized data in big endian representation.
 
void GetInt16BE (const void *p, int16_t &i)
 Function getting a 16-bit signed integer from serialized data in big endian representation.
 
int16_t GetInt16LE (const void *p)
 Function getting a 16-bit signed integer from serialized data in little endian representation.
 
void GetInt16LE (const void *p, int16_t &i)
 Function getting a 16-bit signed integer from serialized data in little endian representation.
 
int32_t GetInt24 (const void *p)
 Function getting a 24-bit signed integer from serialized data in big endian representation.
 
void GetInt24 (const void *p, int32_t &i)
 Function getting a 24-bit signed integer from serialized data in big endian representation.
 
int32_t GetInt24BE (const void *p)
 Function getting a 24-bit signed integer from serialized data in big endian representation.
 
void GetInt24BE (const void *p, int32_t &i)
 Function getting a 24-bit signed integer from serialized data in big endian representation.
 
int32_t GetInt24LE (const void *p)
 Function getting a 24-bit signed integer from serialized data in little endian representation.
 
void GetInt24LE (const void *p, int32_t &i)
 Function getting a 24-bit signed integer from serialized data in little endian representation.
 
int32_t GetInt32 (const void *p)
 Function getting a 32-bit signed integer from serialized data in big endian representation.
 
void GetInt32 (const void *p, int32_t &i)
 Function getting a 32-bit signed integer from serialized data in big endian representation.
 
int32_t GetInt32BE (const void *p)
 Function getting a 32-bit signed integer from serialized data in big endian representation.
 
void GetInt32BE (const void *p, int32_t &i)
 Function getting a 32-bit signed integer from serialized data in big endian representation.
 
int32_t GetInt32LE (const void *p)
 Function getting a 32-bit signed integer from serialized data in little endian representation.
 
void GetInt32LE (const void *p, int32_t &i)
 Function getting a 32-bit signed integer from serialized data in little endian representation.
 
int64_t GetInt40BE (const void *p)
 Function getting a 40-bit signed integer from serialized data in big endian representation.
 
int64_t GetInt40LE (const void *p)
 Function getting a 40-bit signed integer from serialized data in little endian representation.
 
int64_t GetInt48BE (const void *p)
 Function getting a 48-bit signed integer from serialized data in big endian representation.
 
int64_t GetInt48LE (const void *p)
 Function getting a 48-bit signed integer from serialized data in little endian representation.
 
int64_t GetInt64 (const void *p)
 Function getting a 64-bit signed integer from serialized data in big endian representation.
 
void GetInt64 (const void *p, int64_t &i)
 Function getting a 64-bit signed integer from serialized data in big endian representation.
 
int64_t GetInt64BE (const void *p)
 Function getting a 64-bit signed integer from serialized data in big endian representation.
 
void GetInt64BE (const void *p, int64_t &i)
 Function getting a 64-bit signed integer from serialized data in big endian representation.
 
int64_t GetInt64LE (const void *p)
 Function getting a 64-bit signed integer from serialized data in little endian representation.
 
void GetInt64LE (const void *p, int64_t &i)
 Function getting a 64-bit signed integer from serialized data in little endian representation.
 
int8_t GetInt8 (const void *p)
 Function getting an 8-bit signed integer from serialized data.
 
void GetInt8 (const void *p, int8_t &i)
 Function getting an 8-bit signed integer from serialized data.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value >::type * = nullptr>
INT GetIntBE (const void *p)
 Template function getting an integer from serialized data in big endian representation.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value >::type * = nullptr>
void GetIntBE (const void *p, INT &i)
 Template function getting an integer from serialized data in big endian representation.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value >::type * = nullptr>
INT GetIntLE (const void *p)
 Template function getting an integer from serialized data in little endian representation.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value >::type * = nullptr>
void GetIntLE (const void *p, INT &i)
 Template function getting an integer from serialized data in little endian representation.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value >::type * = nullptr>
INT GetIntVar (const void *p, size_t size)
 Template function getting a variable-length integer from serialized data in big endian representation.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value >::type * = nullptr>
void GetIntVar (const void *p, size_t size, INT &i)
 Template function getting a variable-length integer from serialized data in big endian representation.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value >::type * = nullptr>
INT GetIntVarBE (const void *p, size_t size)
 Template function getting a variable-length integer from serialized data in big endian representation.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value >::type * = nullptr>
void GetIntVarBE (const void *p, size_t size, INT &i)
 Template function getting a variable-length integer from serialized data in big endian representation.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value >::type * = nullptr>
INT GetIntVarLE (const void *p, size_t size)
 Template function getting a variable-length integer from serialized data in little endian representation.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value >::type * = nullptr>
void GetIntVarLE (const void *p, size_t size, INT &i)
 Template function getting a variable-length integer from serialized data in little endian representation.
 
bool GetLegacyBandWidth (Variable< BandWidth > &bandwidth, const xml::Element *element, const UString &attribute)
 Get optional bandwidth parameter from an XML element, accepting legacy values.
 
bool GetLocalIPAddresses (IPv4AddressMaskVector &addresses, Report &report=(*(static_cast< ts::Report * >(ts::CerrReport::Instance()))))
 Get the list of all local IPv4 addresses in the system with their network masks.
 
bool GetLocalIPAddresses (IPv4AddressVector &addresses, Report &report=(*(static_cast< ts::Report * >(ts::CerrReport::Instance()))))
 Get the list of all local IPv4 addresses in the system.
 
void GetProcessMetrics (ProcessMetrics &metrics)
 Get metrics for the current process.
 
UString GetRISTLibraryVersion ()
 Get the version of the RIST library.
 
UString GetStringPropertyBag (::IMoniker *moniker, const ::OLECHAR *property_name, Report &report)
 Get a string property from the "property bag" of a COM object (Windows-specific).
 
UString GetTuningSpaceClass (::ITuningSpace *tuning, Report &report)
 Get the class name of a DirectShow tuning space (Windows-specific).
 
UString GetTuningSpaceDescription (::ITuningSpace *tuning, Report &report)
 Get full description of a DirectShow tuning space (Windows-specific).
 
UString GetTuningSpaceFriendlyName (::ITuningSpace *tuning, Report &report)
 Get the user-friendly name of a DirectShow tuning space (Windows-specific).
 
UString GetTuningSpaceNetworkType (::ITuningSpace *tuning, Report &report)
 Get the network type of a DirectShow tuning space (Windows-specific).
 
UString GetTuningSpaceUniqueName (::ITuningSpace *tuning, Report &report)
 Get the unique name of a DirectShow tuning space (Windows-specific).
 
uint16_t GetUInt16 (const void *p)
 Function getting a 16-bit unsigned integer from serialized data in big endian representation.
 
void GetUInt16 (const void *p, uint16_t &i)
 Function getting a 16-bit unsigned integer from serialized data in big endian representation.
 
uint16_t GetUInt16BE (const void *p)
 Function getting a 16-bit unsigned integer from serialized data in big endian representation.
 
void GetUInt16BE (const void *p, uint16_t &i)
 Function getting a 16-bit unsigned integer from serialized data in big endian representation.
 
uint16_t GetUInt16LE (const void *p)
 Function getting a 16-bit unsigned integer from serialized data in little endian representation.
 
void GetUInt16LE (const void *p, uint16_t &i)
 Function getting a 16-bit unsigned integer from serialized data in little endian representation.
 
uint32_t GetUInt24 (const void *p)
 Function getting a 24-bit unsigned integer from serialized data in big endian representation.
 
void GetUInt24 (const void *p, uint32_t &i)
 Function getting a 24-bit unsigned integer from serialized data in big endian representation.
 
uint32_t GetUInt24BE (const void *p)
 Function getting a 24-bit unsigned integer from serialized data in big endian representation.
 
void GetUInt24BE (const void *p, uint32_t &i)
 Function getting a 24-bit unsigned integer from serialized data in big endian representation.
 
uint32_t GetUInt24LE (const void *p)
 Function getting a 24-bit unsigned integer from serialized data in little endian representation.
 
void GetUInt24LE (const void *p, uint32_t &i)
 Function getting a 24-bit unsigned integer from serialized data in little endian representation.
 
uint32_t GetUInt32 (const void *p)
 Function getting a 32-bit unsigned integer from serialized data in big endian representation.
 
void GetUInt32 (const void *p, uint32_t &i)
 Function getting a 32-bit unsigned integer from serialized data in big endian representation.
 
uint32_t GetUInt32BE (const void *p)
 Function getting a 32-bit unsigned integer from serialized data in big endian representation.
 
void GetUInt32BE (const void *p, uint32_t &i)
 Function getting a 32-bit unsigned integer from serialized data in big endian representation.
 
uint32_t GetUInt32LE (const void *p)
 Function getting a 32-bit unsigned integer from serialized data in little endian representation.
 
void GetUInt32LE (const void *p, uint32_t &i)
 Function getting a 32-bit unsigned integer from serialized data in little endian representation.
 
uint64_t GetUInt40 (const void *p)
 Function getting a 40-bit unsigned integer from serialized data in big endian representation.
 
void GetUInt40 (const void *p, uint64_t &i)
 Function getting a 40-bit unsigned integer from serialized data in big endian representation.
 
uint64_t GetUInt40BE (const void *p)
 Function getting a 40-bit unsigned integer from serialized data in big endian representation.
 
uint64_t GetUInt40LE (const void *p)
 Function getting a 40-bit unsigned integer from serialized data in little endian representation.
 
uint64_t GetUInt48 (const void *p)
 Function getting a 48-bit unsigned integer from serialized data in big endian representation.
 
void GetUInt48 (const void *p, uint64_t &i)
 Function getting a 48-bit unsigned integer from serialized data in big endian representation.
 
uint64_t GetUInt48BE (const void *p)
 Function getting a 48-bit unsigned integer from serialized data in big endian representation.
 
uint64_t GetUInt48LE (const void *p)
 Function getting a 48-bit unsigned integer from serialized data in little endian representation.
 
uint64_t GetUInt64 (const void *p)
 Function getting a 64-bit unsigned integer from serialized data in big endian representation.
 
void GetUInt64 (const void *p, uint64_t &i)
 Function getting a 64-bit unsigned integer from serialized data in big endian representation.
 
uint64_t GetUInt64BE (const void *p)
 Function getting a 64-bit unsigned integer from serialized data in big endian representation.
 
void GetUInt64BE (const void *p, uint64_t &i)
 Function getting a 64-bit unsigned integer from serialized data in big endian representation.
 
uint64_t GetUInt64LE (const void *p)
 Function getting a 64-bit unsigned integer from serialized data in little endian representation.
 
void GetUInt64LE (const void *p, uint64_t &i)
 Function getting a 64-bit unsigned integer from serialized data in little endian representation.
 
uint8_t GetUInt8 (const void *p)
 Function getting an 8-bit unsigned integer from serialized data.
 
void GetUInt8 (const void *p, uint8_t &i)
 Function getting an 8-bit unsigned integer from serialized data.
 
UString GetVatekVersion ()
 Get the version of VATek library.
 
uint32_t GuardIntervalDivider (GuardInterval g)
 Compute the divider of a guard interval value.
 
uint32_t GuardIntervalMultiplier (GuardInterval g)
 Compute the multiplier of a guard interval value.
 
bool HasDektecSupport ()
 Check if this version of TSDuck was built with Dektec support.
 
bool HasVatekSupport ()
 Check if this version of TSDuck was built with VATek support.
 
bool IdenticalBytes (const void *area, size_t area_size)
 Check if a memory area contains all identical byte values.
 
bool Identity (bool arg)
 MonoBoolPredicate identity.
 
void IgnorePipeSignal ()
 Ensure that writing to a broken pipe does not kill the current process.
 
std::ostream & indent (std::ostream &os)
 I/O manipulator for TextFormatter: push one indentation level.
 
void InitMediaType (::AM_MEDIA_TYPE &media_type)
 Initialize a media type with "null" values (Windows-specific).
 
template<class OSTREAM , class TRAITS = std::char_traits<typename OSTREAM::char_type>>
std::basic_ostream< typename OSTREAM::char_type, TRAITS > & IOManipulator (std::basic_ostream< typename OSTREAM::char_type, TRAITS > &strm, OSTREAM &(OSTREAM::*func)())
 I/O manipulator for subclasses of std::basic_ostream.
 
bool IPInitialize (Report &=(*(static_cast< ts::Report * >(ts::CerrReport::Instance()))))
 Initialize the IP libraries in the current process.
 
UString IPProtocolName (uint8_t protocol, bool long_format=false)
 Get the name of an IP protocol (UDP, TCP, etc).
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value &&std::is_unsigned< INT >::value >::type * = nullptr>
bool is_negative (INT a)
 Check if an integer value is negative, optimized for signed or unsigned type.
 
bool IsAbsoluteFilePath (const UString &path)
 Check if a file path is absolute (starting at a root of a file system).
 
bool IsAccented (UChar c)
 Check if a character contains an accent.
 
bool IsAlpha (UChar c)
 Check if a character is a letter.
 
bool IsAudioSID (uint8_t sid)
 Check if a stream id value indicates an audio stream.
 
bool IsCombiningDiacritical (UChar c)
 Check if a character is a combining diacritical character.
 
bool IsDigit (UChar c)
 Check if a character is a decimal digit.
 
bool IsDirectory (const UString &path)
 Check if a path exists and is a directory.
 
bool IsExecutable (const UString &path)
 Check if a file exists and is executable.
 
bool IsHexa (UChar c)
 Check if a character is an hexadecimal digit.
 
bool IsLeadingSurrogate (UChar c)
 Check if a character is a "leading surrogate" value.
 
bool IsLocalIPAddress (const IPv4Address &address)
 Check if a local system interface has a specified IP address.
 
bool IsLongHeaderSID (uint8_t sid)
 Check if a stream id value indicates a PES packet with long header.
 
bool IsLower (UChar c)
 Check if a character is a lower case letter.
 
bool IsPrintable (UChar c)
 Check if a character is printable according to the current C locale.
 
bool IsPrivilegedUser ()
 Check if the current user is privileged (root on UNIX, an administrator on Windows).
 
bool IsSatelliteDelivery (DeliverySystem sys)
 Check if a delivery system is a satellite one.
 
bool IsSpace (UChar c)
 Check if a character is a space.
 
bool IsSymbolicLink (const UString &path)
 Check if a file path is a symbolic link.
 
bool IsTerrestrialDelivery (DeliverySystem sys)
 Check if a delivery system is a terrestrial one.
 
bool IsTrailingSurrogate (UChar c)
 Check if a character is a "trailing surrogate" value.
 
bool IsUpper (UChar c)
 Check if a character is an upper case letter.
 
bool IsValidBCD (uint8_t b)
 Check if a byte is a valid Binary Coded Decimal (BCD) value.
 
bool IsVideoSID (uint8_t sid)
 Check if a stream id value indicates a video stream.
 
template<class CONTAINER >
size_t LargestSize (const CONTAINER &container)
 Get the size of the largest object in a container of objects having a size() method.
 
SysErrorCode LastSysErrorCode ()
 Get the error code of the last operating system call.
 
SysSocketErrorCode LastSysSocketErrorCode ()
 Get the error code of the last socket system call.
 
UChar LeadingSurrogate (char32_t cp)
 Compute the first part of the surrogate pair of a 32-bit Unicode code point (which needs a surrogate pair).
 
bool LegacyBandWidthToHz (BandWidth &bandwidth, const UString &str)
 Convert a string containing a bandwidth value into an integer value in Hz.
 
bool LoadEnvironment (Environment &env, const UString &fileName)
 Load a text file containing environment variables.
 
bool LoadLegacyBandWidthArg (BandWidth &bandwidth, Args &args, const UChar *name, BandWidth def_value=0)
 Load a bandwidth argument from command line.
 
bool LoadLegacyBandWidthArg (Variable< BandWidth > &bandwidth, Args &args, const UChar *name)
 Load a bandwidth argument from command line.
 
TSPacketFormat LoadTSPacketFormatInputOption (const Args &args, const UChar *name=u"format")
 Get the value of a --format option for TS packet format in input files.
 
TSPacketFormat LoadTSPacketFormatOutputOption (const Args &args, const UChar *name=u"format")
 Get the value of a --format option for TS packet format in output files.
 
const uint8_t * LocatePattern (const void *area, size_t area_size, const void *pattern, size_t pattern_size)
 Locate a pattern into a memory area.
 
template<class MAP >
std::list< typename MAP::key_type > MapKeysList (const MAP &container)
 Get the list of all keys in a map.
 
template<class MAP >
std::set< typename MAP::key_type > MapKeysSet (const MAP &container)
 Get the set of all keys in a map.
 
template<class MAP >
std::list< typename MAP::mapped_type > MapValuesList (const MAP &container)
 Get the list of all values in a map.
 
IOManipulatorProxy< TextFormatter, size_t > margin (size_t size)
 I/O manipulator for TextFormatter: set the margin size for outer-most elements.
 
std::ostream & margin (std::ostream &os)
 I/O manipulator for TextFormatter: move to the current margin.
 
bool Match (UChar c1, UChar c2, CaseSensitivity cs)
 Check two characters match, case sensitive or insensitive.
 
template<typename T , int storage_bits, int exponent_bits, int mantissa_bits, typename std::enable_if< std::is_floating_point< T >::value, int >::type = 0>
constexpr bool match_ieee_float ()
 This template function checks if a floating point type matches a given IEEE represenation.
 
size_t MaxDecimalWidth (size_t typeSize, size_t digitSeparatorSize=0)
 Compute the maximum width of the decimal representation of an integer type.
 
size_t MaxHexaWidth (size_t typeSize, size_t digitSeparatorSize=0)
 Compute the maximum width of the hexadecimal representation of an integer type.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value, int >::type = 0>
bool mul_overflow (INT a, INT b) platform_specific
 Check if an integer multiplication generates an overflow.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value, int >::type = 0>
bool mul_overflow (INT a, INT b, INT res)
 Check if an integer multiplication generates an overflow.
 
bool MultiAnd (std::initializer_list< bool > args)
 MultiBoolPredicate "and".
 
bool MultiNand (std::initializer_list< bool > args)
 MultiBoolPredicate "nand".
 
bool MultiNor (std::initializer_list< bool > args)
 MultiBoolPredicate "nor".
 
bool MultiOr (std::initializer_list< bool > args)
 MultiBoolPredicate "or".
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value||std::is_enum< INT >::value, int >::type = 0>
UString NameFromDTV (const UString &sectionName, INT value, NamesFlags flags=NamesFlags::NAME, size_t bits=0, INT alternateValue=static_cast< INT >(0))
 Get a name from a specified section in the DTV names file.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value||std::is_enum< INT >::value, int >::type = 0>
UString NameFromDTVWithFallback (const UString &sectionName, INT value1, INT value2, NamesFlags flags=NamesFlags::NAME, size_t bits=0, INT alternateValue=static_cast< INT >(0))
 Get a name from a specified section in the DTV names file, with alternate fallback value.
 
UString NameFromOUI (uint32_t oui, NamesFlags flags=NamesFlags::NAME)
 Get the name of an OUI (IEEE-assigned Organizationally Unique Identifier), 24 bits.
 
UString NameGUID (const ::GUID &guid)
 Format a GUID as string and resolve a few known names (Windows-specific).
 
bool Nand (bool arg1, bool arg2)
 BoolPredicate "nand".
 
bool NeedSurrogate (char32_t cp)
 Check if a 32-bit Unicode code point needs a surrogate pair in UTF-16 representation.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value &&std::is_unsigned< INT >::value, int >::type = 0>
bool neg_overflow (INT a)
 Check if the negation (opposite sign) of an integer generates an overflow.
 
uint64_t NextPCR (uint64_t last_pcr, PacketCounter distance, const BitRate &bitrate)
 Compute the PCR of a packet, based on the PCR of a previous packet.
 
bool Nor (bool arg1, bool arg2)
 BoolPredicate "nor".
 
bool Not (bool arg)
 MonoBoolPredicate "not".
 
bool Or (bool arg1, bool arg2)
 BoolPredicate "or".
 
BitRate PacketBitRate (PacketCounter packets, MilliSecond duration)
 Compute the bitrate from a number of packets transmitted during a given duration in milliseconds.
 
PacketCounter PacketDistance (const BitRate &bitrate, MilliSecond duration)
 Compute the number of packets transmitted during a given duration in milliseconds.
 
PacketCounter PacketDistanceFromPCR (BitRate bitrate, uint64_t pcr)
 Compute the number of packets transmitted during a given duration in PCR units.
 
MilliSecond PacketInterval (const BitRate &bitrate, PacketCounter distance=1)
 Compute the interval, in milliseconds, between two packets.
 
UString PathPrefix (const UString &path)
 Return the prefix of a file path ("dir/foo.bar" => "dir/foo").
 
UString PathSuffix (const UString &path)
 Return the suffix of a file path ("dir/foo.bar" => ".bar").
 
MilliSecond PCRToMilliSecond (uint64_t pcr)
 Convert a PCR value to milliseconds.
 
UString PCRToString (uint64_t pcr, bool hexa=true, bool decimal=true, bool ms=true)
 Convert a PCR value to a string.
 
UString PinDirectionName (::PIN_DIRECTION dir)
 Get the name for a DirectShow pin direction value (Windows-specific).
 
uint64_t Power10 (size_t pow)
 Get a power of 10 using a fast lookup table.
 
UChar Precombined (UChar letter, UChar mark)
 Build a precombined character from its base letter and non-spacing diacritical mark.
 
MilliSecond PTSToMilliSecond (uint64_t pts)
 Convert a PTS or DTS value to milliseconds.
 
UString PTSToString (uint64_t pts, bool hexa=true, bool decimal=true, bool ms=true)
 Convert a PTS or DTS value to a string.
 
void PutFloat32 (void *p, ieee_float32_t f)
 Function serializing a 32-bit IEEE float data in big endian representation.
 
void PutFloat32BE (void *p, ieee_float32_t f)
 Function serializing a 32-bit IEEE float data in big endian representation.
 
void PutFloat32LE (void *p, ieee_float32_t f)
 Function serializing a 32-bit IEEE float data in little endian representation.
 
void PutFloat64 (void *p, ieee_float64_t f)
 Function serializing a 64-bit IEEE float data in big endian representation.
 
void PutFloat64BE (void *p, ieee_float64_t f)
 Function serializing a 64-bit IEEE float data in big endian representation.
 
void PutFloat64LE (void *p, ieee_float64_t f)
 Function serializing a 64-bit IEEE float data in little endian representation.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value >::type * = nullptr>
void PutInt (void *p, INT i)
 Template function serializing an integer data in big endian representation.
 
void PutInt16 (void *p, int16_t i)
 Function serializing a 16-bit signed integer data in big endian representation.
 
void PutInt16BE (void *p, int16_t i)
 Function serializing a 16-bit signed integer data in big endian representation.
 
void PutInt16LE (void *p, int16_t i)
 Function serializing a 16-bit signed integer data in little endian representation.
 
void PutInt24 (void *p, int32_t i)
 Function serializing a 24-bit signed integer data in big endian representation.
 
void PutInt24BE (void *p, int32_t i)
 Function serializing a 24-bit signed integer data in big endian representation.
 
void PutInt24LE (void *p, int32_t i)
 Function serializing a 24-bit signed integer data in little endian representation.
 
void PutInt32 (void *p, int32_t i)
 Function serializing a 32-bit signed integer data in big endian representation.
 
void PutInt32BE (void *p, int32_t i)
 Function serializing a 32-bit signed integer data in big endian representation.
 
void PutInt32LE (void *p, int32_t i)
 Function serializing a 32-bit signed integer data in little endian representation.
 
void PutInt40BE (void *p, int64_t i)
 Function serializing a 40-bit signed integer data in big endian representation.
 
void PutInt40LE (void *p, int64_t i)
 Function serializing a 40-bit signed integer data in little endian representation.
 
void PutInt48BE (void *p, int64_t i)
 Function serializing a 48-bit signed integer data in big endian representation.
 
void PutInt48LE (void *p, int64_t i)
 Function serializing a 48-bit signed integer data in little endian representation.
 
void PutInt64 (void *p, int64_t i)
 Function serializing a 64-bit signed integer data in big endian representation.
 
void PutInt64BE (void *p, int64_t i)
 Function serializing a 64-bit signed integer data in big endian representation.
 
void PutInt64LE (void *p, int64_t i)
 Function serializing a 64-bit signed integer data in little endian representation.
 
void PutInt8 (void *p, int8_t i)
 Function serializing an 8-bit signed integer data.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value >::type * = nullptr>
void PutIntBE (void *p, INT i)
 Template function serializing an integer data in big endian representation.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value >::type * = nullptr>
void PutIntLE (void *p, INT i)
 Template function serializing an integer data in little endian representation.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value >::type * = nullptr>
void PutIntVar (void *p, size_t size, INT i)
 Template function serializing a variable-length integer data in big endian representation.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value >::type * = nullptr>
void PutIntVarBE (void *p, size_t size, INT i)
 Template function serializing a variable-length integer data in big endian representation.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value >::type * = nullptr>
void PutIntVarLE (void *p, size_t size, INT i)
 Template function serializing a variable-length integer data in little endian representation.
 
void PutUInt16 (void *p, uint16_t i)
 Function serializing a 16-bit unsigned integer data in big endian representation.
 
void PutUInt16BE (void *p, uint16_t i)
 Function serializing a 16-bit unsigned integer data in big endian representation.
 
void PutUInt16LE (void *p, uint16_t i)
 Function serializing a 16-bit unsigned integer data in little endian representation.
 
void PutUInt24 (void *p, uint32_t i)
 Function serializing a 24-bit unsigned integer data in big endian representation.
 
void PutUInt24BE (void *p, uint32_t i)
 Function serializing a 24-bit unsigned integer data in big endian representation.
 
void PutUInt24LE (void *p, uint32_t i)
 Function serializing a 24-bit unsigned integer data in little endian representation.
 
void PutUInt32 (void *p, uint32_t i)
 Function serializing a 32-bit unsigned integer data in big endian representation.
 
void PutUInt32BE (void *p, uint32_t i)
 Function serializing a 32-bit unsigned integer data in big endian representation.
 
void PutUInt32LE (void *p, uint32_t i)
 Function serializing a 32-bit unsigned integer data in little endian representation.
 
void PutUInt40 (void *p, uint64_t i)
 Function serializing a 40-bit unsigned integer data in big endian representation.
 
void PutUInt40BE (void *p, uint64_t i)
 Function serializing a 40-bit unsigned integer data in big endian representation.
 
void PutUInt40LE (void *p, uint64_t i)
 Function serializing a 40-bit unsigned integer data in little endian representation.
 
void PutUInt48 (void *p, uint64_t i)
 Function serializing a 48-bit unsigned integer data in big endian representation.
 
void PutUInt48BE (void *p, uint64_t i)
 Function serializing a 48-bit unsigned integer data in big endian representation.
 
void PutUInt48LE (void *p, uint64_t i)
 Function serializing a 48-bit unsigned integer data in little endian representation.
 
void PutUInt64 (void *p, uint64_t i)
 Function serializing a 64-bit unsigned integer data in big endian representation.
 
void PutUInt64BE (void *p, uint64_t i)
 Function serializing a 64-bit unsigned integer data in big endian representation.
 
void PutUInt64LE (void *p, uint64_t i)
 Function serializing a 64-bit unsigned integer data in little endian representation.
 
void PutUInt8 (void *p, uint8_t i)
 Function serializing an 8-bit unsigned integer data.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value >::type * = nullptr>
std::vector< INTRange (INT first, INT last)
 Build a vector of integers containing all values in a range.
 
UString RelativeFilePath (const UString &path, const UString &base=UString(), CaseSensitivity caseSensitivity=FileSystemCaseSensitivity, bool portableSlashes=false)
 Build a relative form of a file path, relative to a base directory.
 
UString RemoveAccent (UChar c)
 Remove all forms of accent or composition from a character.
 
template<class CONTAINER >
void RemoveDuplicates (CONTAINER &container)
 Remove duplicated elements in a container.
 
bool RenameFile (const UString &old_path, const UString &new_path, Report &report=(*(static_cast< ts::Report * >(ts::CerrReport::Instance()))))
 Rename / move a file or directory.
 
UString ResolveSymbolicLinks (const UString &path, ResolveSymbolicLinksFlags flags=LINK_SINGLE)
 Resolve symbolic links.
 
uint32_t ROL (uint32_t word, int i)
 Inlined function performing 32-bit left-rotate.
 
uint64_t ROL64 (uint64_t word, int i)
 Inlined function performing 64-bit left-rotate.
 
uint64_t ROL64c (uint64_t word, const int i)
 Inlined function performing 64-bit left-rotate with a constant value in the range 0..63 for index.
 
uint32_t ROLc (uint32_t word, const int i)
 Inlined function performing 32-bit left-rotate with a constant value in the range 0..31 for index.
 
uint32_t ROR (uint32_t word, int i)
 Inlined function performing 32-bit right-rotate.
 
uint64_t ROR64 (uint64_t word, int i)
 Inlined function performing 64-bit right-rotate.
 
uint64_t ROR64c (uint64_t word, const int i)
 Inlined function performing 64-bit right-rotate with a constant value in the range 0..63 for index.
 
uint32_t RORc (uint32_t word, const int i)
 Inlined function performing 32-bit right-rotate with a constant value in the range 0..31 for index.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value &&std::is_unsigned< INT >::value >::type * = nullptr>
INT round_down (INT x, INT f)
 Round x down to previous multiple of a factor f.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value &&std::is_unsigned< INT