29 #ifndef _VANC_SCTE_104_H
30 #define _VANC_SCTE_104_H
41 #define SO_INIT_REQUEST_DATA 0x001
46 #define MO_SPLICE_REQUEST_DATA 0x101
51 #define MO_SPLICE_NULL_REQUEST_DATA 0x102
56 #define MO_TIME_SIGNAL_REQUEST_DATA 0x104
57 #define MO_INSERT_DESCRIPTOR_REQUEST_DATA 0x108
58 #define MO_INSERT_DTMF_REQUEST_DATA 0x109
59 #define MO_INSERT_AVAIL_DESCRIPTOR_REQUEST_DATA 0x10a
60 #define MO_INSERT_SEGMENTATION_REQUEST_DATA 0x10b
61 #define MO_PROPRIETARY_COMMAND_REQUEST_DATA 0x10c
62 #define MO_INSERT_TIER_DATA 0x10f
63 #define MO_INSERT_TIME_DESCRIPTOR 0x110
68 #define SPLICESTART_NORMAL 0x01
73 #define SPLICESTART_IMMEDIATE 0x02
78 #define SPLICEEND_NORMAL 0x03
83 #define SPLICEEND_IMMEDIATE 0x04
88 #define SPLICE_CANCEL 0x05
98 unsigned short messageSize;
99 unsigned short result;
100 unsigned short result_extension;
101 unsigned char protocol_version;
102 unsigned char AS_index;
103 unsigned char message_number;
104 unsigned short DPI_PID_index;
113 unsigned char time_type;
116 unsigned int UTC_seconds;
117 unsigned short UTC_microseconds;
121 unsigned char minutes;
122 unsigned char seconds;
123 unsigned char frames;
126 unsigned char GPI_number;
127 unsigned char GPI_edge;
138 unsigned int splice_insert_type;
139 unsigned int splice_event_id;
140 unsigned short unique_program_id;
141 unsigned short pre_roll_time;
142 unsigned short brk_duration;
143 unsigned char avail_num;
144 unsigned char avails_expected;
145 unsigned char auto_return_flag;
154 unsigned short pre_roll_time;
163 unsigned int num_provider_avails;
164 uint32_t provider_avail_id[255];
173 unsigned int descriptor_count;
174 unsigned int total_length;
175 unsigned char descriptor_bytes[255];
184 unsigned char pre_roll_time;
185 unsigned int dtmf_length;
195 unsigned int event_id;
196 unsigned int event_cancel_indicator;
197 unsigned int duration;
198 unsigned int upid_type;
199 unsigned int upid_length;
200 unsigned char upid[255];
201 unsigned int type_id;
202 unsigned int segment_num;
203 unsigned int segments_expected;
204 unsigned int duration_extension_frames;
205 unsigned int delivery_not_restricted_flag;
206 unsigned int web_delivery_allowed_flag;
207 unsigned int no_regional_blackout_flag;
208 unsigned int archive_allowed_flag;
209 unsigned int device_restrictions;
218 uint64_t TAI_seconds;
220 unsigned int UTC_offset;
229 unsigned int proprietary_id;
230 unsigned int proprietary_command;
231 unsigned int data_length;
232 unsigned char proprietary_data[255];
241 unsigned short tier_data;
246 unsigned short data_length;
269 unsigned short messageSize;
270 unsigned char protocol_version;
271 unsigned char AS_index;
272 unsigned char message_number;
273 unsigned short DPI_PID_index;
274 unsigned char SCTE35_protocol_version;
276 unsigned char num_ops;
288 unsigned char payloadDescriptorByte;
294 unsigned char payload[2000];
295 unsigned int payloadLengthBytes;
343 uint8_t *inBytes, uint16_t inCount,
344 uint8_t **bytes, uint16_t *byteCount);
360 uint16_t **words, uint16_t *wordCount);
376 uint8_t **bytes, uint16_t *byteCount);
void klvanc_free_SCTE_104(void *p)
TODO - Brief description goes here.
TODO - Brief description goes here.
Definition: vanc-scte_104.h:170
int klvanc_dump_SCTE_104(struct klvanc_context_s *ctx, void *p)
Print out the properties of a SCTE-104 structure.
TODO - Brief description goes here.
Definition: vanc-scte_104.h:226
int klvanc_convert_SCTE_104_to_words(struct klvanc_context_s *ctx, struct klvanc_packet_scte_104_s *pkt, uint16_t **words, uint16_t *wordCount)
Convert type struct packet_scte_104_s into a more traditional line of vanc words, so that we may push out as VANC data. On success, caller MUST free the resulting *words array.
TODO - Brief description goes here.
Definition: vanc-scte_104.h:151
TODO - Brief description goes here.
Definition: vanc-scte_104.h:110
TODO - Brief description goes here.
Definition: vanc-scte_104.h:93
Application specific context, the library allocates and stores user specific instance information...
Definition: vanc.h:118
TODO - Brief description goes here.
Definition: vanc-scte_104.h:160
int klvanc_alloc_SCTE_104(uint16_t opId, struct klvanc_packet_scte_104_s **pkt)
Create a SCTE-104 structure.
TODO - Brief description goes here.
Definition: vanc-scte_104.h:238
TODO - Brief description goes here.
Definition: vanc-scte_104.h:215
TODO - Brief description goes here.
Definition: vanc-scte_104.h:181
TODO - Brief description goes here.
Definition: vanc-scte_104.h:264
int klvanc_convert_SCTE_104_to_packetBytes(struct klvanc_context_s *ctx, const struct klvanc_packet_scte_104_s *pkt, uint8_t **bytes, uint16_t *byteCount)
Convert type struct packet_scte_104_s into a block of bytes which can be serialized over TCP or embed...
Definition: vanc-scte_104.h:244
TODO - Brief description goes here.
Definition: vanc-scte_104.h:192
int klvanc_convert_SCTE_104_packetbytes_to_SMPTE_2010(struct klvanc_context_s *ctx, uint8_t *inBytes, uint16_t inCount, uint8_t **bytes, uint16_t *byteCount)
Encapsulate a SCTE-104 packet into a SMPTE 2010 packet (suitable for embedding in a VANC packet)...
TODO - Brief description goes here.
Definition: vanc-scte_104.h:283
VANC Headers and packet structure.
TODO - Brief description goes here.
Definition: vanc-scte_104.h:135