SCTE 104/35 Codex
Sections
- 9.2Splice info section
- 9.2.1Semantic definition of fields in splice_info_section()
- 9.3.1splice_null()
- 9.3.2splice_schedule()
- 9.3.3splice_insert()
- 9.3.4time_signal()
- 9.3.4.1Semantic definition of time_signal()
- 9.3.5bandwidth_reservation()
- 9.3.6private_command()
- 9.4.1splice_time()
- 9.4.1.1Semantic definition of fields in splice_time()
- 9.4.2break_duration()
- 9.4.2.1Semantic definition of fields in break_duration()
- 10.2Splice descriptor
- 10.2.1Semantic definition of fields in splice_descriptor()
- 10.3.1avail_descriptor()
- 10.3.1.1Semantic definition of fields in avail_descriptor()
- 10.3.2DTMF_descriptor()
- 10.3.2.1Semantic definition of fields in DTMF_descriptor()
- 10.3.3Segmentation_descriptor()
- 10.3.3.1Segmentation descriptor details
- 10.3.3.3MPU() definition and semantics
- 10.3.3.4MID() definition and semantics
- 10.3.4time_descriptor()
- 10.3.4.2Semantic definition of fields in time_descriptor()
splice_info_section()
9.2| Field | Bits | Type | Constraint | Condition | Clause |
|---|---|---|---|---|---|
| table_id | 8 | uimsbf | 0xFC | 9.2.1 | |
| section_syntax_indicator | 1 | bslbf | 0 | 9.2.1 | |
| private_indicator | 1 | bslbf | 0 | 9.2.1 | |
| reserved | 2 | bslbf | 9.2.1 | ||
| section_length | 12 | uimsbf | 9.2.1 | ||
| protocol_version | 8 | uimsbf | 9.2.1 | ||
| encrypted_packet | 1 | bslbf | 9.2.1 | ||
| encryption_algorithm | 6 | uimsbf | 9.2.1 | ||
| pts_adjustment | 33 | uimsbf | 9.2.1 | ||
| cw_index | 8 | uimsbf | 9.2.1 | ||
| tier | 12 | bslbf | 0x000-0xFFF | 9.2.1 | |
| splice_command_length | 12 | uimsbf | 9.2.1 | ||
| splice_command_type | 8 | uimsbf | 9.2.1 | ||
| splice_command()the command body selected by splice_command_type: splice_null, splice_schedule, splice_insert, time_signal, bandwidth_reservation, or private_command | selected by splice_command_type | 9.3 | |||
| descriptor_loop_length | 16 | uimsbf | 9.2.1 | ||
| splice_descriptor()invokes splice_descriptorrepeated to fill descriptor_loop_length | for (i=0; i<N1; i++) | 10.2 | |||
| alignment_stuffing | 8 | bslbf | for (i=0; i<N2; i++) | 9.2.1 | |
| E_CRC_32 | 32 | rpchof | if encrypted_packet == 1 | 9.2.1 | |
| CRC_32 | 32 | rpchof | 9.2.1 |
splice_null()
9.3.1No fields are listed for this structure.
splice_schedule()
9.3.2| Field | Bits | Type | Constraint | Condition | Clause |
|---|---|---|---|---|---|
| splice_count | 8 | uimsbf | 9.3.2 | ||
| splice_event_id | 32 | uimsbf | for (i=0; i<splice_count; i++) | 9.3.2 | |
| splice_event_cancel_indicator | 1 | bslbf | for (i=0; i<splice_count; i++) | 9.3.2 | |
| reserved | 7 | bslbf | for (i=0; i<splice_count; i++) | 9.3.2 | |
| out_of_network_indicator | 1 | bslbf | if splice_event_cancel_indicator == 0 | 9.3.2 | |
| program_splice_flag | 1 | bslbf | if splice_event_cancel_indicator == 0 | 9.3.2 | |
| duration_flag | 1 | bslbf | if splice_event_cancel_indicator == 0 | 9.3.2 | |
| reserved | 5 | bslbf | if splice_event_cancel_indicator == 0 | 9.3.2 | |
| utc_splice_time | 32 | uimsbf | if program_splice_flag == 1 | 9.3.2 | |
| component_count | 8 | uimsbf | if program_splice_flag == 0 | 9.3.2 | |
| component_tag | 8 | uimsbf | for (j=0; j<component_count; j++) | 9.3.2 | |
| utc_splice_time | 32 | uimsbf | for (j=0; j<component_count; j++) | 9.3.2 | |
| break_duration()invokes break_duration | if duration_flag == 1 | 9.3.2 | |||
| unique_program_id | 16 | uimsbf | if splice_event_cancel_indicator == 0 | 9.3.2 | |
| avail_num | 8 | uimsbf | if splice_event_cancel_indicator == 0 | 9.3.2 | |
| avails_expected | 8 | uimsbf | if splice_event_cancel_indicator == 0 | 9.3.2 |
splice_insert()
9.3.3| Field | Bits | Type | Constraint | Condition | Clause |
|---|---|---|---|---|---|
| splice_event_id | 32 | uimsbf | 9.3.3 | ||
| splice_event_cancel_indicator | 1 | bslbf | 9.3.3 | ||
| reserved | 7 | bslbf | 9.3.3 | ||
| out_of_network_indicator | 1 | bslbf | if splice_event_cancel_indicator == 0 | 9.3.3 | |
| program_splice_flag | 1 | bslbf | if splice_event_cancel_indicator == 0 | 9.3.3 | |
| duration_flag | 1 | bslbf | if splice_event_cancel_indicator == 0 | 9.3.3 | |
| splice_immediate_flag | 1 | bslbf | if splice_event_cancel_indicator == 0 | 9.3.3 | |
| reserved | 4 | bslbf | if splice_event_cancel_indicator == 0 | 9.3.3 | |
| splice_time()invokes splice_time | if program_splice_flag == 1 && splice_immediate_flag == 0 | 9.3.3 | |||
| component_count | 8 | uimsbf | if program_splice_flag == 0 | 9.3.3 | |
| component_tag | 8 | uimsbf | for (i=0; i<component_count; i++) | 9.3.3 | |
| splice_time()invokes splice_time | for (i=0; i<component_count; i++) if splice_immediate_flag == 0 | 9.3.3 | |||
| break_duration()invokes break_duration | if duration_flag == 1 | 9.3.3 | |||
| unique_program_id | 16 | uimsbf | if splice_event_cancel_indicator == 0 | 9.3.3 | |
| avail_num | 8 | uimsbf | if splice_event_cancel_indicator == 0 | 9.3.3 | |
| avails_expected | 8 | uimsbf | if splice_event_cancel_indicator == 0 | 9.3.3 |
time_signal()
9.3.4| Field | Bits | Type | Constraint | Condition | Clause |
|---|---|---|---|---|---|
| splice_time()invokes splice_time | 9.3.4 |
bandwidth_reservation()
9.3.5No fields are listed for this structure.
private_command()
9.3.6| Field | Bits | Type | Constraint | Condition | Clause |
|---|---|---|---|---|---|
| identifier | 32 | uimsbf | 9.3.6 | ||
| private_byte | 8 | uimsbf | for (i=0; i<N; i++) | 9.3.6 |
splice_time()
9.4.1| Field | Bits | Type | Constraint | Condition | Clause |
|---|---|---|---|---|---|
| time_specified_flag | 1 | bslbf | 9.4.1.1 | ||
| reserved | 6 | bslbf | if time_specified_flag == 1 | 9.4.1.1 | |
| pts_time | 33 | uimsbf | if time_specified_flag == 1 | 9.4.1.1 | |
| reserved | 7 | bslbf | if time_specified_flag == 0 | 9.4.1.1 |
break_duration()
9.4.2| Field | Bits | Type | Constraint | Condition | Clause |
|---|---|---|---|---|---|
| auto_return | 1 | bslbf | 9.4.2.1 | ||
| reserved | 6 | bslbf | 9.4.2.1 | ||
| duration | 33 | uimsbf | 9.4.2.1 |
splice_descriptor()
10.2| Field | Bits | Type | Constraint | Condition | Clause |
|---|---|---|---|---|---|
| splice_descriptor_tag | 8 | uimsbf | 10.2.1 | ||
| descriptor_length | 8 | uimsbf | 10.2.1 | ||
| identifier | 32 | uimsbf | 10.2.1 | ||
| private_byte | 8 | uimsbf | for (i=0; i<N; i++) | 10.2.1 |
avail_descriptor()
10.3.1| Field | Bits | Type | Constraint | Condition | Clause |
|---|---|---|---|---|---|
| splice_descriptor_tag | 8 | uimsbf | 0x00 | 10.3.1.1 | |
| descriptor_length | 8 | uimsbf | 0x08 | 10.3.1.1 | |
| identifier | 32 | uimsbf | 0x43554549 (CUEI) | 10.3.1.1 | |
| provider_avail_id | 32 | uimsbf | 10.3.1.1 |
DTMF_descriptor()
10.3.2| Field | Bits | Type | Constraint | Condition | Clause |
|---|---|---|---|---|---|
| splice_descriptor_tag | 8 | uimsbf | 0x01 | 10.3.2.1 | |
| descriptor_length | 8 | uimsbf | 10.3.2.1 | ||
| identifier | 32 | uimsbf | 0x43554549 (CUEI) | 10.3.2.1 | |
| preroll | 8 | uimsbf | 10.3.2.1 | ||
| dtmf_count | 3 | uimsbf | 10.3.2.1 | ||
| reserved | 5 | bslbf | 10.3.2.1 | ||
| DTMF_char | 8 | uimsbf | for (i=0; i<dtmf_count; i++) | 10.3.2.1 |
segmentation_descriptor()
10.3.3| Field | Bits | Type | Constraint | Condition | Clause |
|---|---|---|---|---|---|
| splice_descriptor_tag | 8 | uimsbf | 0x02 | 10.3.3.1 | |
| descriptor_length | 8 | uimsbf | 10.3.3.1 | ||
| identifier | 32 | uimsbf | 0x43554549 (CUEI) | 10.3.3.1 | |
| segmentation_event_id | 32 | uimsbf | 10.3.3.1 | ||
| segmentation_event_cancel_indicator | 1 | bslbf | 10.3.3.1 | ||
| reserved | 7 | bslbf | 10.3.3.1 | ||
| program_segmentation_flag | 1 | bslbf | if segmentation_event_cancel_indicator == 0 | 10.3.3.1 | |
| segmentation_duration_flag | 1 | bslbf | if segmentation_event_cancel_indicator == 0 | 10.3.3.1 | |
| delivery_not_restricted_flag | 1 | bslbf | if segmentation_event_cancel_indicator == 0 | 10.3.3.1 | |
| web_delivery_allowed_flag | 1 | bslbf | if delivery_not_restricted_flag == 0 | 10.3.3.1 | |
| no_regional_blackout_flag | 1 | bslbf | if delivery_not_restricted_flag == 0 | 10.3.3.1 | |
| archive_allowed_flag | 1 | bslbf | if delivery_not_restricted_flag == 0 | 10.3.3.1 | |
| device_restrictions | 2 | bslbf | if delivery_not_restricted_flag == 0 | 10.3.3.1 | |
| reserved | 5 | bslbf | if delivery_not_restricted_flag == 1 | 10.3.3.1 | |
| component_count | 8 | uimsbf | if program_segmentation_flag == 0 | 10.3.3.1 | |
| component_tag | 8 | uimsbf | for (i=0; i<component_count; i++) | 10.3.3.1 | |
| reserved | 7 | bslbf | for (i=0; i<component_count; i++) | 10.3.3.1 | |
| pts_offset | 33 | uimsbf | for (i=0; i<component_count; i++) | 10.3.3.1 | |
| segmentation_duration | 40 | uimsbf | if segmentation_duration_flag == 1 | 10.3.3.1 | |
| segmentation_upid_type | 8 | uimsbf | if segmentation_event_cancel_indicator == 0 | 10.3.3.1 | |
| segmentation_upid_length | 8 | uimsbf | if segmentation_event_cancel_indicator == 0 | 10.3.3.1 | |
| segmentation_upid | N*8 | uimsbf | if segmentation_event_cancel_indicator == 0; length = segmentation_upid_length | 10.3.3.1 | |
| segmentation_type_id | 8 | uimsbf | if segmentation_event_cancel_indicator == 0 | 10.3.3.1 | |
| segment_num | 8 | uimsbf | if segmentation_event_cancel_indicator == 0 | 10.3.3.1 | |
| segments_expected | 8 | uimsbf | if segmentation_event_cancel_indicator == 0 | 10.3.3.1 | |
| sub_segment_num | 8 | uimsbf | optional appendix (present only if descriptor_length includes it) for segmentation_type_id in {0x34,0x36} | 10.3.3.1 | |
| sub_segments_expected | 8 | uimsbf | present only when sub_segment_num is present | 10.3.3.1 |
MPU()
10.3.3.3| Field | Bits | Type | Constraint | Condition | Clause |
|---|---|---|---|---|---|
| format_identifier | 32 | uimsbf | 10.3.3.3 | ||
| private_data | N*8 | uimsbf | 10.3.3.3 |
MID()
10.3.3.4| Field | Bits | Type | Constraint | Condition | Clause |
|---|---|---|---|---|---|
| segmentation_upid_type | 8 | uimsbf | for (i=0; i<N; i++) | 10.3.3.4 | |
| length | 8 | uimsbf | for (i=0; i<N; i++) | 10.3.3.4 | |
| segmentation_upid | N*8 | uimsbf | for (i=0; i<N; i++) | 10.3.3.4 |
time_descriptor()
10.3.4| Field | Bits | Type | Constraint | Condition | Clause |
|---|---|---|---|---|---|
| splice_descriptor_tag | 8 | uimsbf | 0x03 | 10.3.4.2 | |
| descriptor_length | 8 | uimsbf | 10.3.4.2 | ||
| identifier | 32 | uimsbf | 0x43554549 (CUEI) | 10.3.4.2 | |
| TAI_seconds | 48 | uimsbf | 10.3.4.2 | ||
| TAI_ns | 32 | uimsbf | 10.3.4.2 | ||
| UTC_offset | 16 | uimsbf | 10.3.4.2 |