diff options
Diffstat (limited to 'libdtv/libsi/include')
-rw-r--r-- | libdtv/libsi/include/libsi.h | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/libdtv/libsi/include/libsi.h b/libdtv/libsi/include/libsi.h index 366387a..8e9e260 100644 --- a/libdtv/libsi/include/libsi.h +++ b/libdtv/libsi/include/libsi.h @@ -315,6 +315,29 @@ struct Descriptor { }; +/* ConditionalAccessDescriptor */ + +struct ConditionalAccessDescriptor { + struct NODE Node; + unsigned short Tag; + unsigned short Amount; /* Data */ + unsigned char *Data; +}; + +#define CreateConditionalAccessDescriptor(descr, amount, data) \ + do \ + { \ + unsigned char *tmpptr; \ + \ + xMemAlloc (amount, &tmpptr); \ + memcpy (tmpptr, data, amount); \ + xCreateNode (((struct ConditionalAccessDescriptor *)descr), NULL); \ + ((struct ConditionalAccessDescriptor *)descr)->Tag = DESCR_CA; \ + ((struct ConditionalAccessDescriptor *)descr)->Amount = amount; \ + ((struct ConditionalAccessDescriptor *)descr)->Data = tmpptr; \ + } while (0) + + /* Iso639LanguageDescriptor */ struct Iso639LanguageDescriptor { |