Go to the documentation of this file.
45 explicit operator const unsigned char*(void)
const {
return m_data; }
81 virtual QString
toString(
void)
const;
94 virtual bool Parse(
void) {
return true; }
96 const unsigned char *
m_data {
nullptr};
149 static bool IsParsible(
const unsigned char *data,
uint safe_bytes);
153 return QString(
"Splice DTMF: %1").arg(
DTMFString());
201 return ((uint64_t(
m_data[14+(i*6)] & 0
x1) << 32) |
202 (uint64_t(
m_data[15+(i*6)]) << 24) |
203 (uint64_t(
m_data[16+(i*6)]) << 16) |
204 (uint64_t(
m_data[17+(i*6)]) << 8) |
205 (uint64_t(
m_data[18+(i*6)])));
213 return ((uint64_t(
_ptrs[0][0]) << 32) |
214 (uint64_t(
_ptrs[0][1]) << 24) |
215 (uint64_t(
_ptrs[0][2]) << 16) |
216 (uint64_t(
_ptrs[0][3]) << 8) |
217 (uint64_t(
_ptrs[0][4])));
236 {
return _ptrs[1][1]; }
241 unsigned char const *
p =
_ptrs[1];
246 QByteArray ba(
reinterpret_cast<const char*
>(
_ptrs[1]+2),
279 bool Parse(
void)
override;
280 QString
toString(
void)
const override;
285 std::array<unsigned char const *,3>
_ptrs {};
virtual QString toString(void) const
AvailDescriptor(const unsigned char *data, int len=300)
QString DTMFString(void) const
@ kProgramRunoverUnplanned
@ kVISAN
versioned ISAN See ISO 15706-2
uint SegmentationTypeID(void) const
virtual QString toStringXML(uint indent_level) const
Returns XML representation of string the TS Reader XML format.
@ kAdID
4 alpha + 4 alphanumeric
uint SegmentationUPIDType(void) const
static desc_list_t ParseAndExclude(const unsigned char *data, uint len, int excluded_descid)
std::array< unsigned char const *, 3 > _ptrs
bool Parse(void) override
SpliceDescriptor(const unsigned char *data, int len, uint tag)
char DTMFChar(uint i) const
uint SegmentNum(void) const
bool IsProgramSegmentation(void) const
QString SegmentationUPIDString(void) const
uint SegmentationEventId(void) const
SpliceDescriptor(const unsigned char *data, int len)
static desc_list_t FindAll(const desc_list_t &parsed, uint desc_tag)
SegmentationDescriptor(const unsigned char *data, int len=300)
@ kProviderAdvertisementEnd
@ kADI
ADI See MD-SP-ADI2.0-AS-I03-070105.
QString ProviderAvailIdString(void) const
DTMFDescriptor(const unsigned char *data, int len=300)
bool IsSegmentationEventCancel(void) const
@ kTID
TMS ProgramID 2 alpha followed by 10 numeric.
ANSI/SCTE 35 splice descriptor implementation Copyright (c) 2011, Digital Nirvana,...
uint SegmentationUPIDLength(void) const
QString toString(void) const override
std::vector< const unsigned char * > desc_list_t
uint Identifier(void) const
uint64_t PTSOffset(uint i)
uint DescriptorTag(void) const
QString SegmentationEventIdString(void) const
@ kNotUsed
upid is not present in the descriptor
QString IdentifierString(void) const
uint ComponentCount(void) const
uint DescriptorLength(void) const
static desc_list_t ParseOnlyInclude(const unsigned char *data, uint len, int excluded_descid)
uint SegmentsExpected(void) const
uint DTMFCount(void) const
@ kISCI
4 alpha + 4 numeric
const unsigned char * m_data
QString toString(void) const override
@ kUMID
UMID See SMPTE 330M.
QString DescriptorTagString(void) const
const unsigned char * SegmentationUPID(void) const
@ kProgramEarlyTermination
virtual ~SpliceDescriptor(void)=default
static bool IsParsible(const unsigned char *data, uint safe_bytes)
uint64_t SegmentationDuration(void) const
@ kProviderAdvertisementStart
@ kDistributorAdvertisementStart
static const unsigned char * Find(const desc_list_t &parsed, uint desc_tag)
@ kDistributorAdvertisementEnd
bool HasSegmentationDuration(void) const
QString toString(void) const override
@ kISAN
ISAN See ISO 15706.
uint ComponentTag(uint i) const
uint ProviderAvailId(void) const