19 December 2019

Custom Ad Breaks in advanced_dash

Added support of custom <ad_breaks /> and <cue_inserts />.

<?xml version="1.0"?>
<query>
    <userid><<id>></userid> <!-- required-->
    <userkey><<key>></userkey> <!-- required-->
    <action>[Action]</action> <!-- required-->
    <source>[SourceFile]</source> <!-- required-->
    <format>
        <output>advanced_dash</output>
        <!-- multiple ad_breaks may be included -->
        <ad_break>
            <start>[StartTime]</start>
            <end>[EndTime]</end>
            <duration>[BreakDuration]</duration>
            <drop_segments>[yes|no]</drop_segments>
            <!-- multiple marker_type parameters may be included -->
            <marker_type>[MarkerType1]</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>
        </ad_break>
        <ad_break>
           	<!-- ad_break params -->
        </ad_break>
        <!-- multiple cue_inserts may be included -->
        <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>
    </format>
</query>
{
    "query": {
        "userid": "<<id>>",
        "userkey": "<<key>>",
        "action": "[Action]",
        "source": "[SourceFile]",
        "format": {
            "output": "advanced_dash",
            "ad_break": [
                {
                    "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]",
                        }
                    ]
                }
            ],
            "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]",
                        }
                    ]
                }
            ]
        }
    }
}
ParameterDescriptionAllowed ValuesDefault Values
marker_type (ad_break)Break Marker Type scte-35 — adds <scte35:signal />* block.cue-out-in
marker_type (cue_insert) scte35-opening-credit — adds <scte35:signal /> opening credits block.
scte35-closing-credit — adds <scte35:signal /> closing credits block.
scte35-chapter-marker — adds <scte35:signal /> chapter marker block.
scte35-content-identification — adds <scte35:signal /> content identification block.
scte35-opening-credit
idMarker ID attributePositive integernone
startPlace 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
endPlace 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
durationSpecify 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_segmentsSpecify whether or not to drop segments during a break.yes, nono - for <ad_break />
yes - for <cue_insert />
## upid_data parameters
segmentation_upid_typeUPID typePositive integer number.none
segmentation_upidUnique UPID string for cueValid UPID stringnone

Adaptive Temporal Averaging Denoiser

Added support of atadenoise filter.

<?xml version="1.0"?>
<query>
    <userid><<id>></userid> <!-- required-->
    <userkey><<key>></userkey> <!-- required-->
    <action>addMedia</action>
    <source>[SourceFile]</source> <!-- required-->
    <format> <!-- required -->
        <output>[output]</output> <!-- required -->
        <atadenoise>
            <a0>[AThresholdPane1]</a0>
            <b0>[BThresholdPane1]</b0>
            <a1>[AThresholdPane2]</a1>
            <b1>[BThresholdPane2]</b1>
            <a2>[AThresholdPane3]</a2>
            <b2>[BThresholdPane3]</b2>
            <s>[AveragingFramesNumber]</s>
            <p>[AveragingPlanes]</p>
        </atadenoise>
    </format>
</query>
{
    "query": {
        "userid": "<<id>>",
        "userkey": "<<key>>",
        "action": "addMedia",
        "source": "[SourceFile]",
        "format": {
            "output": "[output]",
            "atadenoise": {
                "a0": "[AThresholdPane1]",
                "b0": "[BThresholdPane1]",
                "a1": "[AThresholdPane2]",
                "b1": "[BThresholdPane2]",
                "a2": "[AThresholdPane3]",
                "b2": "[BThresholdPane3]",
                "s": "[AveragingFramesNumber]",
                "p": "[AveragingPlanes]"
            }
        }
    }
}
ParameterDescriptionAllowed ValuesDefault Value
a0Threshold A for 1st planeFloat number between 0 and 0.30.02
b0Threshold B for 1st planeFloat number between 0 and 50.04
a1Threshold A for 2nd planeFloat number between 0 and 0.30.02
b1Threshold B for 2nd planeFloat number between 0 and 50.04
a2Threshold A for 3rd planeFloat number between 0 and 0.30.02
b2Threshold B for 3rd planeFloat number between 0 and 50.04
sNumber of frames that will be used for averaging.Odd positive integer number.9
pWhat planes of frame will be used for averaging all - all planes
positive integer number - planes count
none

Widevine and PlayReady DRM for advanced dash manifests

Added support of Widevine and PlayReady DRM for advanced_dash and advanced_fmp4 output formats.

<?xml version="1.0"?>
<query>
    <userid><<id>></userid> <!-- required-->
    <userkey><<key>></userkey> <!-- required-->
    <action>[Action]</action> <!-- required-->
    <source>[SourceFile]</source> <!-- required-->
    <format>
        <output>[advanced_dash|advanced_fmp4]</output>
        <destination>[Destination]</destination> <!-- required-->
        <widevine_drm>[yes|no]</widevine_drm>
        <playready_drm>[yes|no]</playready_drm>
        <!-- Manifests fields -->
        <manifest>
            <widevine_drm>[yes|no]</widevine_drm>
            <playready_drm>[yes|no]</playready_drm>
            <add_hls_drm_metadata>[yes|no]</add_hls_drm_metadata>
        </manifest>
        <!-- Multiple manifests may be included -->
        <manifest>
           <!-- manifest params -->
        </manifest>
        <!-- Format fields -->
        <!-- Nielsen metadata settings -->
    </format>
</query>
{
    "query": {
        "userid": "<<id>>",
        "userkey": "<<key>>",
        "action": "[Action]",
        "source": "[SourceFile]",
        "format": {
            "output": "advanced_fmp4",
            "destination": "[Destination]",
            "widevine_drm": "[yes|no]",
            "playready_drm": "[yes|no]",
            "manifest": [
                {
                    "widevine_drm": "[yes|no]",
                    "playready_drm": "[yes|no]",
                    "add_hls_drm_metadata": "[yes|no]"
                }
            ]
        }
    }
}
ParametersDescriptionAllowed ValuesDefault
widevine_drmApply Widevine DRM for whole output or manifestyes, nono
playready_drmApply PlayReady DRM for whole output or manifestyes, nono
add_hls_drm_metadataAdd DRM signaling to HLS master manifestyes, nono

🚧

For widevine_drm and playready_drm parameters

<widevine_drm /> and <playready_drm /> parameters available only for advanced_dash and dash manifests of advanced_fmp4 output formats.

🚧

For add_hls_drm_metadata parameter

<add_hls_drm_metadata /> parameter available only for advanced_hls, fmp4_hls, and hls manifests of advanced_fmp4** output formats.