22 October 2020

New QC Check: validate DASH (.mpd) manifest

Added new QC test that validates MPD manifest according to specification.

🚧

Note

For advanced_fmp4 output format this test works only for DASH mpd manifests.

<?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_dash|advanced_fmp4]</output><!-- required -->
        <!-- Format fields -->
        <qc> 
            <qc_validate_manifest>
                <severity>[fatal|warning]</severity>
            </qc_match_cue_inserts>
        </qc>
    </format>
</query>
{
    "query": {
        "userid": "<<id>>", // required
        "userkey": "<<key>>", // required
        "action": "AddMedia", // required
        "format": {
            "output": "[qc_check|advanced_dash|advanced_fmp4]",
            "qc": {
                "qc_validate_manifest": {
                    "severity": "[fatal|warning]"
                }
            }
        }
    }
}
ParameterDescriptionAllowed ValuesDefault Value
severitySpecify the QC severity.warning, fatalwarning

QC Auto Tests List

Test NameFormats Available
MPD manifest is validadvanced_dash, advanced_fmp4

QC Auto Conditions

Test NameConditionsValueDeviation
MPD manifest is valid always for advanced_dash output format
included for advanced_fmp4 output format if <dash_manifests /> set to yes
none

Audio-only MPEGTS

Added support of <audio_only /> parameter for mpegts output format.

<?xml version="1.0"?>
<query>
    <userid><<id>></userid> <!-- required-->
    <userkey><<key>></userkey> <!-- required-->
    <action>addMedia</action>
    <source>[SourceFile]</source>
    <format> <!-- required -->
        <output>mpegts</output> <!-- required -->
        <audio_only>[yes|no]</audio_only>
        <!-- format params -->
    </format>
</query>
{
    "query": {
        "userid": "<<id>>", // required
        "userkey": "<<key>>", // required
        "action": "[Action]", // required
        "source": "[SourceFile]", // required
        "format": {
            "output": "mpegts", // required
            "audio_only": "[yes|no]"
            // format params
        }
    }
}
ParameterDescriptionAllowed ValueDefault Value
audio_onlyUse only audio streams in outputyes, nono

Fractional segment duration for advanced multi-bitrate formats

Added support of fractional values for <segment_duration /> parameter of advanced multi-bitrate 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_hls|advanced_dash|advanced_mss|fmp4_hls|advanced_fmp4]</output> <!-- required-->
        <destination>[DestFile]</destination> <!-- required-->
        <stream>
           <!-- stream params -->
        </stream>
        <stream>
           <!-- stream params -->
        </stream>
        <segment_duration>[Duration]</segment_duration>
      	<!-- format params -->
    </format>
</query>
{
    "query": {
        "userid": "<<id>>", // required
        "userkey": "<<key>>", // required
        "action": "[Action]", // required
        "source": "[SourceFile]", // required
        "format": {
            "output": "[advanced_hls|advanced_dash|advanced_mss|fmp4_hls|advanced_fmp4]", // required
            "destination": "[DestFile]", // required
            "stream": [
                {
                    // stream params
                },
                {
                    // stream params
                }
            ],
            "segment_duration": "[Duration]"
            // format params
        }
    }
}
ParameterDescriptionAllowed ValueDefault Value
segment_durationSpecify the duration to split output into segment files, measured in seconds.Positive float number9.0