02 September 2021

Post Packaging ABR Manifest Updates

Add ability to use data from external previously packaged manifests for advanced multi-bitrate stream and image playlist. This workflow can be used to automate post packaging HLS/DASH manifest changes. For example the addition, deletion, or modification of languages audio streams and associated caption tracks.

<?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>
            <get_from_manifest>[yes|no]</get_from_manifest>
            <!-- stream params -->
        </stream>
        <stream>
            <!-- stream params -->
        </stream>
        <manifest>
            <basename>[BaseName]</basename> <!-- required-->
            <sources>[ManifestSource1]</sources>
            <sources>[ManifestSource2]</sources>
            <!-- ... -->
            <sources>[ManifestSourceN]</sources>
        </manifest>
        <manifest>
            <!-- manifest params -->
        </manifest>
        <image_media_playlist>
            <!-- image_media_playlist doesn't work with advanced_mss -->
            <get_from_manifest>[yes|no]</get_from_manifest>
            <!-- image_media_playlist params -->
        </image_media_playlist>
        <image_media_playlist>
            <!-- image_media_playlist params -->
        </image_media_playlist>
        <!-- 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": [
                {
                    "get_from_manifest": "[yes|no]"
                    // stream params
                },
                {
                    // stream params
                }
                // Multiple stream params may be included in output format
                // Maximum number of available streams is 15
            ],
            "manifest": [
                {
                    "basename": "[BaseName]",
                    "sources": [
                        "[ManifestSource1]",
                        "[ManifestSource2]",
                        // ...
                        "[ManifestSourceN]"
                    ]
                },
                {
                    // manifest params
                }
                // Multiple manifests may be included
            ],
            "image_media_playlist": [
                // image_media_playlist doesn't work with advanced_mss
                {
                    "get_from_manifest": "[yes|no]"
                    // image_media_playlist params
                },
                {
                    // image_media_playlist params
                }
                // multiple image_media_playlist may be included
            ],
            // format Params
        }
    }
}
ParameterDescriptionAllowedValuesDefaultValue
*Main Manifest Parameters
sourcesExternal manifest sourcesArray of valid HLS or MPD manifestsnone
Stream and Image Playlist Parameters
get_from_manifestUse data from external manifestyes, nono

🚧

For get_from_manifest

The <get_from_manifest /> parameter available only if manifest <sources /> are specified.