Go to the documentation of this file.
15 static inline QDateTime
dvbdate2qt(
const std::array<uint8_t,5> buf)
72 {
return ((m_tscPtr[0]<<8) | m_tscPtr[1]) & 0xfff; }
74 {
return m_ptrs.size() - 1; }
77 uint TSID(
uint i)
const {
return (m_ptrs[i][0]<<8) | m_ptrs[i][1]; }
80 {
return (m_ptrs[i][2]<<8) | m_ptrs[i][3]; }
84 {
return ((m_ptrs[i][4]<<8) | m_ptrs[i][5]) & 0xfff; }
88 {
return m_ptrs[i]+6; }
94 void Parse(
void)
const;
95 QString
toString(
void)
const override;
96 QString NetworkName(
void)
const;
100 mutable const unsigned char* m_tscPtr {
nullptr};
101 mutable std::vector<const unsigned char*>
m_ptrs;
154 {
return ( m_ptrs[i][2] & 0x01 ) != 0; }
161 {
return ((m_ptrs[i][3]<<8) | (m_ptrs[i][4])) & 0xfff; }
165 {
return m_ptrs[i]+5; }
173 void Parse(
void)
const;
174 QString
toString(
void)
const override;
177 mutable std::vector<const unsigned char*>
m_ptrs;
223 {
return ((m_tscPtr[0]<<8) | m_tscPtr[1]) & 0xfff; }
225 {
return m_ptrs.size() - 1; }
232 {
return (m_ptrs[i][2] << 8) | m_ptrs[i][3]; }
236 {
return ((m_ptrs[i][4]<<8) | m_ptrs[i][5]) & 0xfff; }
240 {
return m_ptrs[i]+6; }
243 void Parse(
void)
const;
244 QString
toString(
void)
const override;
247 mutable const unsigned char* m_tscPtr {
nullptr};
248 mutable std::vector<const unsigned char*>
m_ptrs;
335 {
return (m_ptrs[i][0]<<8) | m_ptrs[i][1]; }
338 {
return m_ptrs[i]+2; }
344 {
return StartTimeUnixUTC(i) + DurationInSeconds(i); }
349 {
return m_ptrs[i]+7; }
362 {
return ((m_ptrs[i][10]<<8) | (m_ptrs[i][11])) & 0xfff; }
366 {
return m_ptrs[i] + 12; }
370 void Parse(
void)
const;
372 static bool IsEIT(
uint table_id);
375 mutable std::vector<const unsigned char*>
m_ptrs;
439 #endif // DVB_TABLES_H
const unsigned char * UTCdata(void) const
This table gives the current DVB stream time.
const unsigned char * Descriptors(void) const
const unsigned char * TransportDescriptors(uint i) const
for(j=0;j<N;j++) x 6.0+p { descriptor() }
const unsigned char * pesdata() const
uint TransportDescriptorsLength(uint i) const
uint BouquetDescriptorsLength(void) const
uint ServiceID(uint i) const
service_id 16 0.0+p
BouquetAssociationTable(const PSIPTable &table)
static QDateTime dvbdate2qt(const std::array< uint8_t, 5 > buf)
static time_t dvbdate2unix(const std::array< uint8_t, 5 > buf)
std::vector< const unsigned char * > m_ptrs
const unsigned char * UTCdata(void) const
TimeOffsetTable(const PSIPTable &table)
~TimeDateTable() override
A PSIP table is a variant of a PES packet containing an MPEG, ATSC or DVB table.
const unsigned char * BouquetDescriptors(void) const
virtual QString toString(void) const
uint ServiceCount() const
Number of services.
uint OriginalNetworkID() const
original_network_id 16 8.0
uint RunningStatus(uint i) const
running_status 3 3.0+p
TimeDateTable(const PSIPTable &table)
uint TransportStreamDataLength(void) const
uint OriginalNetworkID(uint i) const
static constexpr uint8_t byteBCD2int(uint8_t i)
time_t UTCUnix(void) const
This table tells the decoder on which PIDs to find A/V data.
ServiceDescriptionTable(const ServiceDescriptionTable &table)
This table gives the current DVB stream time, plus descriptors.
uint32_t dvbdate2key(const unsigned char *buf)
~TimeOffsetTable() override
bool IsEncrypted(uint i) const
free_CA_mode 1 3.3+p
std::vector< const unsigned char * > m_ptrs
uint TransportStreamCount(void) const
Tells what channels can be found on each transponder for one bouquet (a bunch of channels from one pr...
bool HasEITPresentFollowing(uint i) const
QDateTime UTC(void) const
~ServiceDescriptionTable() override
ServiceDescriptionTable(const PSIPTable &table)
uint TableIDExtension(void) const
uint ServiceDescriptorsLength(uint i) const
desc_loop_length 12 3.4+p
uint DescriptorsLength(void) const
QDateTime UTC(void) const
~BouquetAssociationTable() override
bool HasEITSchedule(uint i) const
time_t UTCUnix(void) const
const unsigned char * ServiceDescriptors(uint i) const
for (j=0;j<N;j++) x 5.0+p { descriptor() }
uint TSID() const
transport_stream_id 16 3.0 0x0000
const unsigned char * psipdata(void) const