Go to the documentation of this file.
3 #ifndef DVB_DESCRIPTORS_H
4 #define DVB_DESCRIPTORS_H
54 static constexpr uint8_t
byteBCDH2int(uint8_t i) {
return i >> 4; };
55 static constexpr uint8_t
byteBCDL2int(uint8_t i) {
return i & 0x0f; };
61 static constexpr uint32_t
byte3BCD2int(uint8_t i, uint8_t j, uint8_t k)
65 static constexpr uint32_t
byte4BCD2int(uint8_t i, uint8_t j, uint8_t k, uint8_t l)
70 static constexpr uint64_t
byte4BCD2int64(uint8_t i, uint8_t j, uint8_t k, uint8_t l)
71 {
return static_cast<uint64_t
>(
byte4BCD2int(i, j, k, l)); }
76 static_assert(
byte4BCD2int(0x98, 0x76, 0x54, 0x32) == 98765432);
77 static_assert(
byte4BCD2int64(0x98, 0x76, 0x54, 0x32) == 98765432ULL);
94 {
return QString(
"NetworkNameDescriptor: ")+
Name(); }
234 {
return (
m_data[2 + (i*3)] & 0x7F) << 8 |
m_data[2 + (i*3) + 1] ; }
236 {
return m_data[2 + (i*3) + 2] & 0x1F ; }
237 QString
toString(
void)
const override;
253 return QString(
"AdaptationFieldDataDescriptor "
254 "adaptation_field_data_identifier(%1)")
272 return QString(
"AncillaryDataDescriptor "
273 "ancillary_data_identifier(%1)")
320 return QString(
"BouquetNameDescriptor: Bouquet Name(%1)")
339 {
return (
m_data[2 + (i*2)] << 8) |
m_data[3 + (i*2)]; }
340 QString
toString(
void)
const override;
458 case 0x2:
case 0x3:
case 0x4:
459 case 0x6:
case 0x7:
case 0x8:
460 return VID_WIDESCREEN;
464 case 0x0A:
case 0x0B:
case 0x0C:
465 case 0x0E:
case 0x0F:
case 0x10:
466 return VID_WIDESCREEN | VID_HDTV;
478 return VID_WIDESCREEN;
479 case 0x0B:
case 0x0C:
480 case 0x0F:
case 0x10:
481 return VID_WIDESCREEN | VID_HDTV;
482 case 0x80:
case 0x81:
483 case 0x82:
case 0x83:
484 return VID_WIDESCREEN | VID_HDTV | VID_3DTV;
531 return AUD_VISUALIMPAIR;
541 unsigned char properties = AUD_UNKNOWN;
546 properties |= AUD_MONO;
549 properties |= AUD_STEREO;
552 properties |= AUD_DOLBY;
555 properties |= AUD_SURROUND;
560 properties |= AUD_VISUALIMPAIR;
563 properties |= AUD_HARDHEAR;
581 return AUD_VISUALIMPAIR;
599 case 0x10:
case 0x11:
case 0x12:
case 0x13:
601 case 0x20:
case 0x21:
case 0x22:
case 0x23:
610 return QString(
"ComponentDescriptor(stream_content: 0x%1, "
645 QString
toString(
void)
const override;
648 static void Init(
void);
676 QString countries=
"";
679 if (i!=0) countries.append(
" ");
680 countries.append(QString::fromLatin1(
681 (
const char *)
m_data+(3*(i+1)), 3));
688 return QString(
"CountryAvailabilityDescriptor: Available(%1) in (%2)")
731 QString
toString(
void)
const override;
785 return "RS(204/188)";
800 static std::array<QString,6> ms
801 {
"auto",
"qam_16",
"qam_32",
"qam_64",
"qam_128",
"qam_256" };
829 QString
toString(
void)
const override;
837 const unsigned char *data,
int len = 300) :
859 return QString(
"%1.%2 %3").arg(num / 10).arg(num % 10)
860 .arg((
IsEast()) ?
"East" :
"West");
871 static const std::array<const QString,4> ps {
"h",
"v",
"l",
"r" };
889 static const std::array<const QString,4> ro {
"0.35",
"0.20",
"0.25",
"auto" };
910 static const std::array<const QString,4> ms {
"qpsk",
"qpsk",
"8psk",
"qam_16" };
938 QString
toString(
void)
const override;
946 const unsigned char *data,
int len = 300) :
972 static std::array<QString,4> bs {
"8",
"7",
"6",
"5" };
993 static std::array<QString,4> cs {
"qpsk",
"qam_16",
"qam_64",
"qam_256" };
1014 static const std::array<const QString,8> hs {
"n",
"1",
"2",
"4",
"a",
"a",
"a",
"a" };
1021 return (0
x2 == i) ? 4 : i;
1035 static const std::array<const QString,8> cr {
1036 "1/2",
"2/3",
"3/4",
"5/6",
"7/8",
"auto",
"auto",
"auto"
1044 static const std::array<const QString,8> cr {
1045 "1/2",
"2/3",
"3/4",
"5/6",
"7/8",
"auto",
"auto",
"auto"
1060 static const std::array<const QString,4> gi {
"1/32",
"1/16",
"1/8",
"1/4" };
1073 static const std::array<const QString,4> tm {
"2",
"8",
"4",
"auto" };
1080 QString
toString(
void)
const override;
1088 const unsigned char *data,
int len = 300) :
1123 QString
toString(
void)
const override;
1131 const unsigned char *data,
int len = 300) :
1163 static const std::array<const QString,4> sm
1164 {
"SISO",
"MISO",
"reserved",
"reserved" };
1181 static constexpr std::array<const uint,6> bw
1182 { 8000000, 7000000, 6000000, 5000000, 10000000, 1712000 };
1187 static const std::array<const QString,6> bs
1188 {
"8",
"7",
"6",
"5",
"10",
"1.712" };
1206 static const std::array<const QString,8> gi
1207 {
"1/32",
"1/16",
"1/8",
"1/4",
"1/128",
"19/128",
"19/256",
"reserved" };
1224 static const std::array<const QString,8> tm
1225 {
"2k",
"8k",
"4k",
"1k",
"16k",
"32k",
"reserved",
"reserved" };
1252 void Parse(
void)
const;
1253 QString
toString(
void)
const override;
1265 const unsigned char *data,
int len = 300) :
1282 QString
toString(
void)
const override;
1290 const unsigned char *data,
int len = 300) :
1321 QString
toString(
void)
const override;
1329 const unsigned char *data,
int len = 300) :
1342 QString
toString(
void)
const override;
1350 const unsigned char *data,
int len = 300) :
1376 QString
toString(
void)
const override;
1384 const unsigned char *data,
int len = 300) :
1404 std::array<QChar,3> code
1406 return QString(code.data(), 3);
1411 QString
toString(
void)
const override;
1419 const unsigned char *data,
int len = 300) :
1439 std::array<QChar,3> code
1441 return QString(code.data(), 3);
1453 QString
toString(
void)
const override;
1461 const unsigned char *data,
int len = 300) :
1481 QString
toString(
void)
const override;
1489 const unsigned char *data,
int len = 300) :
1525 QString
toString(
void)
const override;
1533 const unsigned char *data,
int len = 300) :
1550 QString
toString(
void)
const override;
1597 QMultiMap<QString,QString> Items(
void)
const;
1602 {
return dvb_decode_text(&m_data[8 + LengthOfItems()], TextLength()); }
1642 return (((
unsigned long long)
m_data[(i*4)+3]<<24) |
1656 QString
toString(
void)
const override;
1676 return ((m_data[o] << 16) | (m_data[o+1] << 8) | m_data[o+2]);
1681 std::array<QChar,3> code
1682 { QChar(m_data[o]), QChar(m_data[o+1]), QChar(m_data[o+2]) };
1683 return QString(code.data(), 3);
1691 {
return (m_data[2 + (i*13) + 3] & 0x01) != 0; }
1694 {
return (
byteBCD2int(m_data[2 + (i*13) + 4]) * 60) +
1697 {
return (LocalTimeOffsetPolarity(i) ? -1 : +1) * LocalTimeOffset(i); }
1700 {
return &m_data[2 + (i*13) + 6]; }
1707 {
return (
byteBCD2int(m_data[2 + (i*13) + 11]) * 60) +
1710 QString
toString(
void)
const override;
1770 const unsigned char *data,
int len = 300) :
1789 const unsigned char *data,
int len = 300) :
1808 const unsigned char *data,
int len = 300) :
1839 {
return (
m_data[(i * 6) + 2] << 8) |
m_data[(i * 6) + 3]; }
1842 {
return (
m_data[(i * 6) + 4] << 8) |
m_data[(i * 6) + 5]; }
1845 {
return (
m_data[(i * 6) + 6] << 8) |
m_data[(i * 6) + 7]; }
1847 QString
toString(
void)
const override;
1874 std::array<QChar,3> code
1876 return QString(code.data(), 3);
1885 unsigned char rawRating =
m_data[2 + 3 + (i*4)];
1891 if (rawRating <= 0x0F)
1894 return rawRating + 3;
1918 return QString(
"PDCDescriptor program_id_label(%1)")
1956 return QString(
"ScramblingDescriptor scrambling_mode(%1)")
2112 return QString(
"ServiceDescriptor: %1 %2(0x%3)")
2158 QString str = QString(
"ServiceListDescriptor: %1 Services")
2163 str.append(QString(
" Service (%1) Type%2 (0x%3)")
2269 return QString(
"Stream Identifier Descriptor (0x52): ComponentTag=0x%1")
2286 return QString(
"Stuffing Descriptor (0x42) length(%1)")
2316 {
return m_data[5 + (i<<3)]; }
2319 {
return (
m_data[6 + (i<<3)] << 8) |
m_data[7 + (i<<3)]; }
2322 {
return (
m_data[8 + (i<<3)] << 8) |
m_data[9 + (i<<3)]; }
2324 QString
toString(
void)
const override;
2385 {
return m_data[5 + (i*5)] >> 3; }
2388 {
return m_data[5 + (i*5)] & 0x7; }
2391 {
return m_data[6 + (i*5)]; }
2393 QString
toString(
void)
const override;
2437 {
return QString(
"TransportStreamDescriptor data(%1)").arg(
Data()); }
2510 QString
toString(
void)
const override;
2547 offset += (
HasBSID()) ? 1 : 0;
2556 offset += (
HasBSID()) ? 1 : 0;
2563 QString
toString(
void)
const override;
2570 case 0x0:
return "auto";
2571 case 0x1:
return "1/2";
2572 case 0x2:
return "2/3";
2573 case 0x3:
return "3/4";
2574 case 0x4:
return "5/6";
2575 case 0x5:
return "7/8";
2576 case 0x8:
return "8/9";
2577 case 0xf:
return "none";
2578 default:
return "auto";
2602 {
return (
m_data[2 + (i<<2)] << 8) |
m_data[3 + (i<<2)]; }
2605 {
return ((
m_data[4 + (i<<2)] << 8) |
m_data[5 + (i<<2)]) & 0x3ff; }
2607 QString
toString(
void)
const override;
2630 {
return (
m_data[2 + (i<<2)] << 8) |
m_data[3 + (i<<2)]; }
2633 {
return ((
m_data[4 + (i<<2)] << 8) |
m_data[5 + (i<<2)]) & 0x3ff; }
2635 QString
toString(
void)
const override;
2656 const unsigned char *payload = &data[2];
2663 offset += 5 + payload[offset+4];
2693 {
return (*(
m_entries[i] + 5 + (j*4)) << 8 | *(
m_entries[i] + 5 + (j*4) + 1)) & 0xFFF; }
2698 QString
toString(
void)
const override;
2721 const unsigned char *payload = &data[2];
2728 offset += 6 + payload[offset+5];
2750 {
return QString::fromLatin1((
char *)
m_entries[i] + 2, 3); }
2755 QString
toString(
void)
const override;
2787 {
return QString::fromLatin1((
char *)
m_data +2, 3); }
2792 QString
toString(
void)
const override;
2827 {
return (*(
m_data + 3) != 0xFF) ? *(
m_data + 3) : 0xFFFF;}
2836 {
return *(
m_data + 4 + (i*9)) << 8 | *(
m_data + 5 + (i*9)); }
2839 {
return *(
m_data + 6 + (i*9)); }
2842 {
return *(
m_data + 7 + (i*9)) << 8 | *(
m_data + 8 + (i*9)); }
2845 {
return *(
m_data + 9 + (i*9)) << 8 | *(
m_data + 10 + (i*9)); }
2848 {
return *(
m_data + 11 + (i*9)) << 8 | *(
m_data + 12 + (i*9)); }
2850 QString
toString(
void)
const override;
2869 {
return (
m_data[4 + 0 + (i*9)] << 8) |
m_data[4 + 1 + (i*9)]; }
2872 {
return m_data[4 + 2 + (i*9)]; }
2875 {
return ((
m_data[4 + 3 + (i*9)] << 8) |
m_data[4 + 4 + (i*9)]); }
2878 {
return ((
m_data[4 + 5 + (i*9)] << 8) |
m_data[4 + 6 + (i*9)]); }
2881 {
return ((
m_data[4 + 7 + (i*9)] << 8) |
m_data[4 + 8 + (i*9)]) & 0xf; }
2883 QString
toString(
void)
const override;
2899 uint8_t position = 2;
2900 while (
m_data[1] >= position)
2902 size_t length =
m_data[position+1];
2922 const uint8_t* cridN =
m_crid[n];
2923 int length = cridN[1];
2924 int positionOfHash = length-1;
2925 while (positionOfHash >= 0) {
2926 if (cridN[2 + positionOfHash] ==
'#') {
2927 length = positionOfHash;
2932 return QString::fromLatin1((
const char *)&
m_crid[n][2], length);
2957 return QString::fromLatin1((
const char *)
m_data+2,
m_data[1]);
2962 return QString(
"DefaultAuthorityDescriptor: Authority(%1)")
2975 const unsigned char *data,
int len = 300) :
2982 {
return (
m_data[2] >> 7) & 0x01; }
2986 {
return (
m_data[2] >> 6) & 0x01; }
2991 {
return (
m_data[2] >> 4) & 0x01; }
2996 {
return m_data[2] & 0x03; }
3009 QString
toString(
void)
const override;
3055 #endif // DVB_DESCRIPTORS_H
uint AdaptationFieldDataID(void) const
virtual QString toString(void) const
QString EventName(const enc_override &encoding_override) const
uint TeletextMagazineNum(uint i) const
uint TransmissionMode(void) const
static constexpr uint8_t byteBCDL2int(uint8_t i)
QString OrbitalPositionString(void) const
uint ChannelID(uint i) const
DSNGDescriptor(const unsigned char *data, int len=300)
uint CodeRateLP(void) const
QString TransmissionModeString(void) const
int iso639_key_to_canonical_key(int iso639_2)
TeletextDescriptor(const unsigned char *data, int len=300)
QString toString(void) const override
QString CountryCodeString(void) const
QString CanonicalLanguageString(uint i) const
BouquetNameDescriptor(const unsigned char *data, int len=300)
QString toString(void) const override
MosaicDescriptor(const unsigned char *data, int len=300)
QString HierarchyString(void) const
uint AudioProperties(void) const
ProgramInfo::CategoryType GetMythCategory(uint i) const
uint GuardInterval(void) const
QString GuardIntervalString(void) const
bool LocalTimeOffsetPolarity(uint i) const
-1 if true, +1 if false (behind utc, ahead of utc, resp).
uint CellIDExtension(uint i, uint j) const
uint DescriptorTag(void) const
QString GuardIntervalString(void) const
uint DescriptorLength(void) const
uint OtherFrequencyFlag(void) const
ShortSmoothingBufferDescriptor(const unsigned char *data, int len=300)
uint Nibble1(uint i) const
ShortEventDescriptor(const unsigned char *data, int len=300)
double OrbitalPositionFloat() const
QString GetDescription(uint i) const
uint VideoProperties(void) const
bool IsLinearPolarization(void) const
uint CodeRateHP(void) const
uint Modulation(void) const
bool OtherFrequencyInUse(void) const
int LanguageKey(void) const
ServiceMoveDescriptor(const unsigned char *data, int len=300)
QString ServiceProviderName(void) const
Freesat Logical Channel Number descriptor.
QString toString(void) const override
@ kInnerFEC_8_9_ConvolutionCodeRate
uint DescriptorNumber(void) const
uint Bandwidth(void) const
uint NextTimeOffset(uint i) const
@ kServiceTypeH264AVCSDDigitalTelevision
@ kServiceTypeAdvancedCodecDigitalRadioSound
const unsigned char * TimeOfChangeData(uint i) const
bool IsAvailable(void) const
QString Text(const enc_override &encoding_override) const
QString MobileOriginTypeString(void) const
int CanonicalLanguageKey(void) const
uint FECInner(void) const
uint MP2Properties(void) const
uint ReservedFutureUse(void) const
int LocalTimeOffsetWithPolarity(uint i) const
QString LanguageString(void) const
bool HasMobileNetworkID(void) const
QString toString(void) const override
MessageDescriptor(const unsigned char *data, int len=300)
@ kServiceTypeNVODTimeShifted
uint ApplicationType(uint i) const
int LanguageKey(void) const
ServiceListDescriptor(const unsigned char *data, int len=300)
CellFrequencyLinkDescriptor(const unsigned char *data, int len=300)
uint StreamContent(void) const
int LanguageKey(void) const
MTV_PUBLIC QString dvb_decode_text(const unsigned char *src, uint length, const enc_override &encoding_override)
QString LanguageString(void) const
uint MessageID(void) const
uint Bandwidth(void) const
uint CodingType(void) const
@ kHierarchyInfoAlpha1InDepthInterleaver
QString Message(void) const
@ kHandOverLocalVariation
static constexpr uint64_t byte4BCD2int64(uint8_t i, uint8_t j, uint8_t k, uint8_t l)
QString toString(void) const override
uint Flags(size_t i) const
@ kInnerFEC_5_6_ConvolutionCodeRate
QString toString(void) const override
uint LogicalChannelNumber(size_t i, size_t j) const
@ kHierarchyInfoAlpha2NativeInterleaver
uint NotTimesliceFlag() const
QString toString(void) const override
uint NumCells(void) const
QString FECOuterString(void) const
@ kServiceTypeDataBroadcast
PartialTransportStreamDescriptor(const unsigned char *data, int len=300)
uint CountryCode(void) const
uint Hierarchy(void) const
uint Modulation(void) const
FreesatCallsignDescriptor(const unsigned char *data, int len=300)
MTV_PUBLIC time_t dvbdate2unix(const unsigned char *buf)
@ kSystemSoftwareUpdateService
QString toString(void) const override
DVB Logical Channel Descriptor.
QString toString(void) const override
uint AC3Properties(void) const
FrequencyListDescriptor(const unsigned char *data, int len=300)
bool NativeInterleaver(void) const
int LanguageKey(uint i) const
int CanonicalLanguageKey(void) const
uint FrequencyRaw(void) const
frequency 32 2.0
unsigned long long FrequencyHz(void) const
QString toString(void) const override
uint SubcellInfoLoopLength(uint i) const
uint DescriptorNumber(void) const
int LanguageKey(uint i) const
std::vector< uint8_t > enc_override
@ kInnerFEC_7_8_ConvolutionCodeRate
DefaultAuthorityDescriptor(const unsigned char *data, int len=300)
uint CountryRegionId(uint i) const
CellListDescriptor(const unsigned char *data, int len=300)
QString FECInnerString(void) const
QString LanguageString(void) const
@ kHierarchyInfoAlpha1NativeInterleaver
NetworkNameDescriptor(const unsigned char *data, int len=300)
uint CASystemCount(void) const
QString toString(void) const override
uint DataBroadcastId(void) const
ParentalRatingDescriptor(const unsigned char *data, int len=300)
uint CentreFrequency(int i, int j) const
int LanguageKey(void) const
uint ContentType(size_t n=0) const
uint ChannelNumber(uint i) const
QString toString(void) const override
QString toString(void) const override
MultilingualBouquetNameDescriptor(const unsigned char *data, int len=300)
const unsigned char * PrivateData(void) const
uint ServiceType(uint i) const
DataBroadcastDescriptor(const unsigned char *data, int len=300)
QString BandwidthString(void) const
AncillaryDataDescriptor(const unsigned char *data, int len=300)
uint RegionID(size_t i, size_t j) const
@ kInnerFEC_2_3_ConvolutionCodeRate
AnnouncementSupportDescriptor(const unsigned char *data, int len=300)
uint CentreFrequency(uint i) const
uint ContentEncoding(size_t n=0) const
@ kIP_MACNotificationService
PDCDescriptor(const unsigned char *data, int len=300)
ApplicationSignallingDescriptor(const unsigned char *data, int len=300)
@ kHierarchyInfoAlpha4NativeInterleaver
ServiceDescriptor(const unsigned char *data, int len=300)
uint ChannelCount(void) const
QString toString(void) const override
uint AncillaryPageID(uint i) const
int LanguageKey(void) const
uint RegionCount(void) const
@ kServiceTypeHEVCDigitalTelevision
uint ServiceID(void) const
uint ServiceType(void) const
@ kServiceTypeH264AVCHDDigitalTelevision
uint ServiceId(uint i) const
uint HEVCProperties(void) const
FreesatRegionDescriptor(const unsigned char *data, int len=300)
QString CountryCodeString(uint i) const
QString ServiceName(void) const
@ s2x_satellite_delivery_system
uint UserNibble(uint i) const
MTV_PUBLIC QString dvb_decode_short_name(const unsigned char *src, uint raw_length)
uint TextLength(void) const
uint EventNameLength(void) const
QString BandwidthString(void) const
uint PrivateDataLength(void) const
static QMap< uint, QString > s_categoryDesc
uint SmoothRate(void) const
QString toString(void) const override
uint DataBroadCastId(void) const
uint UserNibble2(uint i) const
PrivateUPCCablecomEpisodeTitleDescriptor(const std::vector< uint8_t > &data)
int CanonicalLanguageKey(uint i) const
QString CanonicalLanguageString(uint i) const
PrivateDataSpecifierDescriptor(const unsigned char *data, int len=300)
@ kServiceTypeH264AVCSDNVODTimeShifted
QString toString(void) const override
@ kHierarchyInfoNonHierarchicalInDepthInterleaver
uint ChannelCount(void) const
uint Constellation(void) const
QString EventShortName(void) const
@ kInnerFEC_7_8_ConvolutionCodeRate
bool IsTeletext(void) const
uint FrequencyLoopLength(uint i) const
uint MultipleInputStreamFlag() const
QString toString(void) const override
QString toString(void) const override
CountryAvailabilityDescriptor(const unsigned char *data, int len=300)
SupplementaryAudioDescriptor(const unsigned char *data, int len=300)
@ kInnerFEC_5_6_ConvolutionCodeRate
bool IsTeletext(void) const
bool HasMainID(void) const
QString RollOffString(void) const
uint TextLength(void) const
uint FrequencyRaw(void) const
uint StreamCount(void) const
uint StreamCount(void) const
AdaptationFieldDataDescriptor(const unsigned char *data, int len=300)
int CanonicalLanguageKey(void) const
DVBSimulcastChannelDescriptor(const unsigned char *data, int len=300)
@ kInnerFEC_1_2_ConvolutionCodeRate
QString toString(void) const override
DVBLogicalChannelDescriptor(const unsigned char *data, int len=300)
uint OldServiceID(void) const
uint ServiceNameLength(void) const
ParentalRatingDescriptor(const std::vector< uint8_t > &data)
CableDeliverySystemDescriptor(const unsigned char *data, int len=300)
const unsigned char * m_data
uint ModulationSystem(void) const
uint ChannelNumber(uint i) const
std::vector< const unsigned char * > desc_list_t
uint ScramblingMode(void) const
ServiceRelocatedDescriptor(const unsigned char *data, int len=300)
@ kTSContainingCompleteNetworkBouquetSI
TerrestrialDeliverySystemDescriptor(const unsigned char *data, int len=300)
static constexpr uint8_t byteBCD2int(uint8_t i)
uint ChanID(size_t i) const
@ kServiceTypeEchoStarTV1
uint HEAACProperties(void) const
QString ConstellationString(void) const
uint SisoMiso(void) const
@ kServiceTypeEchoStarTV2
QString CanonicalLanguageString(void) const
QString toString(void) const override
ExtendedEventDescriptor(const unsigned char *data, int len=300)
uint TextLength(void) const
Sky Logical Channel Number descriptor.
QString FECInnerString(void) const
QString ServiceProviderShortName(void) const
uint TargetEventID(void) const
ImageIconDescriptor(const unsigned char *data, int len=300)
uint OriginalNetworkId(uint i) const
QString ShortName(void) const
@ kServiceTypeNVODReference
uint Frequency(void) const
uint CountryCode(void) const
QString LanguageString(void) const
MTV_PUBLIC QDateTime dvbdate2qt(const unsigned char *buf)
uint32_t PrivateDataSpecifier(void) const
DVB HD Simulcast Logical Channel Descriptor.
QString LanguageString(uint i) const
uint ComponentTag(void) const
uint CountryCount(void) const
bool IsSubtitle(void) const
std::vector< const unsigned char * > m_subCellPtrs
QString BouquetShortName(void) const
VBIDataDescriptor(const unsigned char *data, int len=300)
uint DescriptorTagExtension(void) const
uint AITVersionNumber(uint i) const
uint Frequency(void) const
TargetRegionNameDescriptor(const unsigned char *data, int len=300)
uint FECOuter(void) const
@ kServiceTypeH264AVCFrameCompatiblePlanoStereoscopicHDDigitalTelevision
ContentDescriptor(const unsigned char *data, int len=300)
static QString iso639_key_to_str3(int code)
@ kServiceTypeHEVCUHDDigitalTelevision
QString Text(const enc_override &encoding_override) const
QString toString(void) const override
uint LanguageCodePresent(void) const
std::array< const uint8_t *, 8 > m_crid
uint PeakRate(void) const
@ kServiceTypeDigitalTelevision
@ kHierarchyInfoNonHierarchicalNativeInterleaver
uint GuardInterval(void) const
QString toString(void) const override
uint TransmissionMode(void) const
uint ServiceType(void) const
static volatile bool s_categoryDescExists
QString toString(void) const override
Freesat Channel Callsign descriptor.
@ kServiceReplacementService
QString toString(void) const override
QString SisoMisoString(void) const
QString CanonicalLanguageString(void) const
StuffingDescriptor(const unsigned char *data, int len=300)
CAIdentifierDescriptor(const unsigned char *data, int len=300)
uint ProgramIdLabel(void) const
QString LanguageString(void) const
static QMutex s_categoryLock
TransportStreamDescriptor(const unsigned char *data, int len=300)
uint ServiceCount(void) const
SubtitlingDescriptor(const unsigned char *data, int len=300)
uint MobileInitialServiceID(void) const
uint TransportStreamId(uint i) const
uint ServiceID(uint i) const
const unsigned char * Selector(void) const
@ kInnerFEC_2_3_ConvolutionCodeRate
bool IsEventSimulcast(void) const
uint ComponentType(void) const
QString Language(uint i) const
@ kHandOverAssociatedService
uint LengthOfItems(void) const
LocalTimeOffsetDescriptor(const unsigned char *data, int len=300)
AC3Descriptor(const unsigned char *data, int len=300)
TimeShiftedEventDescriptor(const unsigned char *data, int len=300)
QString LanguageString(void) const
uint CellID(uint i) const
uint Polarization(void) const
uint MobileNetworkID(void) const
uint BandwidthHz(void) const
DataBroadcastIdDescriptor(const unsigned char *data, int len=300)
static QString coderate_inner(uint coderate)
QString toString(void) const override
uint SymbolRate(void) const
uint UserNibble1(uint i) const
QString CodeRateLPString(void) const
int CanonicalLanguageKey(void) const
uint LocalTimeOffset(uint i) const
uint DataSliceID(void) const
QString toString(void) const override
QString toString(void) const override
std::vector< const unsigned char * > m_cellPtrs
uint ChannelType(uint i) const
uint ServiceProviderNameLength(void) const
QString CountryCodeString(void) const
QString Callsign(void) const
@ kServiceTypeH264AVCMosaic
@ kInnerFEC_1_2_ConvolutionCodeRate
QString toString(void) const override
int CASystemId(uint i) const
uint ComponentTag(void) const
uint SelectorLength(void) const
uint TextLength(void) const
QString toString(void) const override
uint LastDescriptorNumber(void) const
QString CanonicalLanguageString(void) const
unsigned long long Frequency(uint i) const
@ kServiceTypeCommonInterface
bool IsEast(void) const
west_east_flag 1 8.0
int CanonicalLanguageKey(uint i) const
QString CanonicalLanguageString(void) const
QString CountryCodeString(uint i) const
@ kInnerFEC_8_9_ConvolutionCodeRate
DVBContentIdentifierDescriptor(const unsigned char *data, int len=300)
QString ServiceShortName(void) const
SHDeliverySystemDescriptor(const unsigned char *data, int len=300)
uint ServiceID(uint i) const
@ kInnerFEC_3_4_ConvolutionCodeRate
ServiceDescriptorMapping(const uint service_type)
QString LanguageString(void) const
uint OrbitalPosition(void) const
orbital_position 16 6.0
QString EventName(void) const
uint OldTransportID(void) const
uint LogicalChannelNumber(size_t i) const
QString ModulationSystemString(void) const
QString LinkageTypeString(void) const
QString toString(void) const override
This is used to label streams so the can be treated differently, for instance each stream may get it'...
int CanonicalLanguageKey(void) const
QString ModulationString(void) const
uint SymbolRateHz(void) const
bool IsDigitalAudio(void) const
MultilingualServiceNameDescriptor(const unsigned char *data, int len=300)
QString toString(void) const override
uint TeletextPageNum(uint i) const
ServiceAvailabilityDescriptor(const unsigned char *data, int len=300)
@ kServiceTypeH264AVCFrameCompatiblePlanoStereoscopicHDNVODReference
bool IsVerticalRightPolarization(void) const
uint ServiceID(uint i) const
QString toString(void) const override
uint64_t FrequencyHz(void) const
QDateTime TimeOfChange(uint i) const
uint ChannelCount(void) const
bool IsMPE_FECUsed(void) const
QString toString(void) const override
PrivateUPCCablecomEpisodeTitleDescriptor(const unsigned char *data, int len=300)
QString toString(void) const override
QString Language(void) const
uint SymbolRateRaw(void) const
QString MobileHandOverTypeString(void) const
QString TransmissionModeString(void) const
uint CountryCode(uint i) const
uint LastNumber(void) const
static constexpr uint32_t byte3BCD2int(uint8_t i, uint8_t j, uint8_t k)
int RegionID(uint i) const
QString toString(void) const override
QString PolarizationString() const
uint ServiceCount(void) const
QString LanguageString(void) const
bool IsTimeSlicingIndicatorUsed(void) const
uint SubtitleType(uint i) const
QString toString(void) const override
TelephoneDescriptor(const unsigned char *data, int len=300)
uint BandwidthHz(void) const
uint LCNCount(size_t i) const
QString ContentId(size_t n=0) const
Freesat Region descriptor.
@ kServiceTypeH264AVCSDNVODReference
QString toString(void) const override
QString CodeRateHPString(void) const
uint SymbolRateHz(void) const
@ kServiceTypeDigitalRadioSound
uint DataComponentTag(void) const
QString toString(void) const override
int LanguageKey(void) const
QString toString(void) const override
uint ChannelNumber(uint i) const
bool HighPriority(void) const
uint SubtitleType(void) const
time_t TimeOfChangeUnix(uint i) const
unsigned long long FrequencyHz(uint i) const
uint AVCProperties(void) const
ScramblingDescriptor(const unsigned char *data, int len=300)
uint LinkageType(void) const
uint ChannelID(size_t i) const
MultilingualNetworkNameDescriptor(const unsigned char *data, int len=300)
@ kServiceTypeH264AVCHDNVODReference
uint ServiceID(size_t i) const
QString toString(void) const
uint MobileHandOverType(void) const
StreamIdentifierDescriptor(const unsigned char *data, int len=300)
static constexpr uint8_t byteBCDH2int(uint8_t i)
@ kServiceTypeMPEG2HDDigitalTelevision
QString toString(void) const override
bool IsHorizontalLeftPolarization(void) const
uint FECInner(void) const
uint MPEG2Properties(void) const
uint MobileOriginType(void) const
bool HasMobileInitialServiceID(void) const
QString toString(void) const override
static constexpr uint32_t byte4BCD2int(uint8_t i, uint8_t j, uint8_t k, uint8_t l)
int LanguageKey(void) const
uint RegionID(void) const
uint ServiceID(size_t i) const
uint TransposerFrequency(uint i, uint j) const
@ kTSContaining_SSU_BAT_NIT
uint FrequencyCount() const
uint OriginalNetworkID() const
static int iso639_str3_to_key(const unsigned char *iso639_2)
T2DeliverySystemDescriptor(const unsigned char *data, int len=300)
QString LanguageString(uint i) const
S2XSatelliteDeliverySystemDescriptor(const unsigned char *data, int len=300)
QString toString(void) const override
bool IsCircularPolarization(void) const
NVODReferenceDescriptor(const unsigned char *data, int len=300)
S2SatelliteDeliverySystemDescriptor(const unsigned char *data, int len=300)
VBITeletextDescriptor(const unsigned char *data, int len=300)
uint RegionRaw(void) const
QString CanonicalLanguageString(void) const
uint64_t FrequencykHz(void) const
uint TeletextType(uint i) const
TargetRegionDescriptor(const unsigned char *data, int len=300)
FreesatLCNDescriptor(const unsigned char *data, int len=300)
uint ComponentType(void) const
@ kServiceTypeEchoStarTV3
OpenTVChannelListDescriptor(const unsigned char *data, int len=300)
uint SmoothBuf(void) const
uint AncillaryDataID(void) const
uint Nibble(uint i) const
QString toString(void) const override
NetworkChangeNotifyDescriptor(const unsigned char *data, int len=300)
uint T2SystemID(void) const
static constexpr uint16_t byte2BCD2int(uint8_t i, uint8_t j)
SatelliteDeliverySystemDescriptor(const unsigned char *data, int len=300)
QString toString(void) const override
@ kInnerFEC_3_4_ConvolutionCodeRate
QString toString(void) const override
uint CompositionPageID(uint i) const
bool IsDigitalAudio(void) const
TimeShiftedServiceDescriptor(const unsigned char *data, int len=300)
@ kServiceTypeH264AVCFrameCompatiblePlanoStereoscopicHDNVODTimeShifted
@ kHierarchyInfoAlpha2InDepthInterleaver
bool IsTargetListed(void) const
QString ModulationString(void) const
uint EditorialClassification(void) const
SkyLCNDescriptor(const unsigned char *data, int len=300)
@ kHierarchyInfoAlpha4InDepthInterleaver
@ kServiceTypeEchoStarTV4
uint ServiceType(size_t i) const
QString RegionName(uint i) const
bool HasComponentType(void) const
PrivateDataSpecifierDescriptor(const std::vector< uint8_t > &data)
uint ServiceID(uint i) const
uint ServiceCount(void) const
QString toString(void) const override
QString toString(void) const override
@ kTSContaining_INT_BAT_NIT
uint ScramblingSequenceSelector() const
LinkageDescriptor(const unsigned char *data, int len=300)
QString DefaultAuthority(void) const
@ kServiceTypeH264AVCHDNVODTimeShifted
QString BouquetName(void) const
ComponentDescriptor(const unsigned char *data, int len=300)
uint OldOriginalNetworkID(void) const
QString CountryNames(void) const
int LanguageKey(void) const
uint Nibble2(uint i) const
C2DeliverySystemDescriptor(const unsigned char *data, int len=300)