CUE-inserts validation

Validation of CUe-inserts in HLS m3u8 streams.

<?xml version="1.0"?>
<query>
    <userid><<id>></userid> <!-- required-->
    <userkey><<key>></userkey> <!-- required-->
    <action>AddMedia</action>
    <source>[SourceFile|SourcePlaylist]</source><!-- required -->
    <format>
        <output>[qc_check|advanced_hls|advanced_dash|advanced_fmp4|fmp4_hls]</output><!-- required -->
        <!-- Format fields -->
        <qc> 
            <qc_match_cue_inserts>
                <severity>[fatal|warning]</severity>
                <cue_insert>
                    <start>[StartTime]</start>
                    <end>[EndTime]</end>
                    <duration>[BreakDuration]</duration>
                    <drop_segments>[yes|no]</drop_segments>
                    <!-- multiple marker_type parameters may be included -->
                    <marker_type>[MarkerType]</marker_type>
                    <marker_type>[MarkerType2]</marker_type>
                    <marker_type>[MarkerTypeN]</marker_type>
                    <id>[BreakID]</id>
                    <!-- multiple upid_data sections may be included -->
                    <upid_data>
                        <segmentation_upid_type>[SegmentationUPIDType]<segmentation_upid_type>
                        <segmentation_upid>[SegmentationUPID]<segmentation_upid>
                    </upid_data>
                    <upid_data>
                        <!-- upid_data params -->
                    </upid_data>
                </cue_insert>
                <cue_insert>
                    <!-- cue_insert params -->
                </cue_insert>
                <framerate>[FrameRate]</framerate>
            </qc_match_cue_inserts>
        </qc>
        <stream>
            <qc> 
                <qc_match_cue_inserts>
                    <severity>[fatal|warning]</severity>
                    <cue_insert>
                        <start>[StartTime]</start>
                        <end>[EndTime]</end>
                        <duration>[BreakDuration]</duration>
                        <drop_segments>[yes|no]</drop_segments>
                        <!-- multiple marker_type parameters may be included -->
                        <marker_type>[MarkerType]</marker_type>
                        <marker_type>[MarkerType2]</marker_type>
                        <marker_type>[MarkerTypeN]</marker_type>
                        <id>[BreakID]</id>
                        <!-- multiple upid_data sections may be included -->
                        <upid_data>
                            <segmentation_upid_type>[SegmentationUPIDType]<segmentation_upid_type>
                            <segmentation_upid>[SegmentationUPID]<segmentation_upid>
                        </upid_data>
                        <upid_data>
                            <!-- upid_data params -->
                        </upid_data>
                    </cue_insert>
                    <cue_insert>
                        <!-- cue_insert params -->
                    </cue_insert>
                    <framerate>[FrameRate]</framerate>
                </qc_match_cue_inserts>
            </qc>
        </stream>
        <stream>
            <!-- stream params -->
        </stream>
    </format>
</query>
{
    "query": {
        "userid": "<<id>>", // required
        "userkey": "<<key>>", // required
        "action": "AddMedia", // required
        "format": {
            "output": "[qc_check|advanced_hls|advanced_dash|advanced_fmp4|fmp4_hls]",
            "qc": {
                "qc_match_cue_inserts": {
                    "severity": "[fatal|warning]",
                    "cue_insert": [
                        {
                            "start": "[StartTime]",
                            "end": "[EndTime]",
                            "duration": "[BreakDuration]",
                            "drop_segments": "[yes|no]",
                            "marker_type": [
                                "[MarkerType1]",
                                "[MarkerType2]",
                                "[MarkerTypeN]"
                            ],
                            "id": "[BreakID]",
                            "upid_data": [
                                {
                                    "segmentation_upid_type": "[SegmentationUPIDType]",
                                    "segmentation_upid": "[SegmentationUPID]",
                                },
                                {
                                    // upid_data params
                                }
                            ]
                        },
                        {
                            // cue_insert params
                        }
                    ],
                    "framerate": "[FrameRate]"
                }
            }
            "stream": [{
                "qc": {
                    "qc_match_cue_inserts": {
                        "severity": "[fatal|warning]",
                        "cue_insert": [
                            {
                                "start": "[StartTime]",
                                "end": "[EndTime]",
                                "duration": "[BreakDuration]",
                                "drop_segments": "[yes|no]",
                                "marker_type": [
                                    "[MarkerType1]",
                                    "[MarkerType2]",
                                    "[MarkerTypeN]"
                                ],
                                "id": "[BreakID]",
                                "upid_data": [
                                    {
                                        "segmentation_upid_type": "[SegmentationUPIDType]",
                                        "segmentation_upid": "[SegmentationUPID]",
                                    },
                                    {
                                        // upid_data params
                                    }
                                ]
                            },
                            {
                                // cue_insert params
                            }
                        ],
                        "framerate": "[FrameRate]"
                    }
                }
            }]
        }
    }
}

Parameter

Description

Allowed Values

Default Values

framerate

Target Frame-Rate

Any non-zero float or N/M where N and M are non-zero integers

none

cue_insert parameters

marker_type

Break Marker Type

  • scte35-opening-credit — expects #EXT-X-SCTE35 opening credits tag.
  • scte35-closing-credit — expects #EXT-X-SCTE35 closing credits tag.
  • scte35-chapter-marker — expects #EXT-X-SCTE35 chapter marker tag.
  • scte35-content-identification — expects #EXT-X-SCTE35 content identification tag.

none

id

Marker ID attribute

Positive integer

none

start

Place cue IN marker in it's value position of manifest

  • positive float number in seconds
  • timecode in format HH:MM:SS[:;]FF
    HH – hours
    MM – minutes
    SS – seconds
    FF – frames
    [:;] – : – non drop-frame, ; – drop-frame;

none

end

Place cue OUT marker in it's value position of manifest

  • positive float number in seconds
  • timecode in format HH:MM:SS[:;]FF
    HH – hours
    MM – minutes
    SS – seconds
    FF – frames
    [:;] – : – non drop-frame, ; – drop-frame;

none

duration

Specify the break duration in seconds.

  • positive float number in seconds
  • string in format HH:MM:SS[:;]FF
    HH – hours
    MM – minutes
    SS – seconds
    FF – frames
    [:;] – : – non drop-frame, ; – drop-frame;

none

drop_segments

Specify whether or not to drop segments during a break.

yes, no

no

upid_data parameters

segmentation_upid_type

UPID type

Positive integer number.

none

segmentation_upid

Unique UPID string for cue

Valid UPID string

none