31 July 2014 - Advanced HLS and Notify_upload

<?xml version="1.0"?>
<query>
    <userid><<id>></userid> <!-- required-->
    <userkey><<key>></userkey> <!-- required-->
    <action>[Action]</action> <!-- required-->
    <format>
        <output>advanced_hls</output>
        <stream>
            <!-- [Video settings params](/#VideoSettings) -->
            <profile>[high|main|baseline]</profile>
            <!-- [Audio settings params](/#AudioSettings) -->
            <!-- [Other format params](/#OtherFormatOptions) -->
            <!-- [Closed Captions params](/#ClosedCaptions) -->
            <!-- [Editing features params](/#EditingFeatures) -->
            <audio_only>[yes|no]</audio_only>
            <still_image>[no|each_segment|first_segment]</still_image>
            <still_image_time>[Time]</still_image_time>
            <still_image_size>[Size]</still_image_size>
        </stream>
        <!-- multiple stream params may be included in advanced_hls output format -->
        <stream>
           <!-- stream params -->
        </stream>
        <!-- Format fields -->
        <segment_duration>[Duration]</segment_duration>
        <pack_files>[yes|no]</pack_files>
        <pack_type>[tar|zip]</pack_type>
        <pack_each_stream>[yes|no]</pack_each_stream>
        <encryption>[yes|no]</encryption>
        <encryption_key>[128bit-key]</encryption_key>
        <encryption_key_file>[SourceURL]</encryption_key_file>
        <copy_nielsen_metadata>[yes|no]</copy_nielsen_metadata>
        <segmenter>[v1|v2|v3]</segmenter>
        <destination>[DestFile]</destination>
    </format>
</query>
{
    "query": {
        "userid": "<<id>>",
        "userkey": "<<key>>",
        "action": "[Action]",
        "format": {
            "output": "advanced_hls",
            "stream": [
                {
                    "profile": "[high|main|baseline]",
                    "audio_only": "[yes|no]",
                    "still_image": "[no|each_segment|first_segment]",
                    "still_image_time": "[Time]",
                    "still_image_size": "[Size]"
                },
                "  "
            ],
            "segment_duration": "[Duration]",
            "pack_files": "[yes|no]",
            "pack_type": "[tar|zip]",
            "pack_each_stream": "[yes|no]",
            "encryption": "[yes|no]",
            "encryption_key": "[128bit-key]",
            "encryption_key_file": "[SourceURL]",
            "copy_nielsen_metadata": "[yes|no]",
            "segmenter": "[v1|v2|v3]",
            "destination": "[DestFile]"
        }
    }
}
Field NameDescriptionAllowed ValuesDefault Values
Format params
segment_durationSegment duration to split media (in seconds)Non-negative integer9
pack_filesWhether to pack resulting files to a single archiveyes, noyes
pack_typeArchive typetar, ziptar
Parameter would be ignored in case of pack_files=no
pack_each_streamPack each stream in separate archiveyes, nono
Parameter would be ignored in case of pack_files=no
encryptionEncrypt TS segements using AES-128yes, nono
encryption_keyEncryption key32 hexidecimal characters ([0-9a-f])None
encryption_key_filelink to encryption key fileValid URLNone
copy_nielsen_metadataCopy Nielsen audio watermarks and Nielsen ID3 tags from sourceyes, nonone
segmenterType of segmenter.v1 – This is the segmenter bundled with FFMPEG and carries significant overhead (as much as 27% with a 364kbps file or 17.3% with a 864kbps file!), and generated several warnings. v2 - This is based on HTTP Live Segmenter based tool. It carries with it the same overhead, but generates far fewer warnings. v3 - his version, we call tsparser, we built in-house from the ground up to be optimized for our cloud infrastructure. This has significantly less overhead (5.8% with a 364kbps file or 3.8% with a 864kbps file), and does not generate any warnings.v3
Stream params
Aceptable params from:

Video settings
Audio settings
Other format options
Watermarking
Video rotation
Cropping
Fading
Video verlays
Audio overlays
Text overlays
Burntin oprions
Closed Captions
audio_onlyResult segments will contain only audio streamyes, nono
still_imageEmbed still image in the audio-only streamno, each_segment, first_segmentno
still_image_timeThe time from the beginning of segment to capture still imageNon-negative number greater than 0.01 or hh:mm:ss.msNone
still_image_sizeThe size of the still imageWxH where W and H — positive integersNone
base_nameCustom stream result file namevalid filenameNone

Can be either an HTTP(S) URL for the script or a mailto: link with email address for which result info will be sent when media uploaded to the specified destination.

Note: for advanced_hls notify for each stream will be sent

Callback Format

<?xml version="1.0"?>
<result>
    <mediaid>[MediaID]</mediaid>
    <taskid>[TaskID]</taskid>
    <destination>[DestinationLink]</destination>
    <status>[DestinationStatus]</status>
</result>
{
    "result": {
        "mediaid": "[MediaID]",
        "taskid": "[TaskID]",
        "destination": "[DestinationLink]",
        "status": "[DestinationStatus]"
    }
}
FieldDescription
MediaIDA unique identifier of the media
TaskIDA unique identifier of the task
DestinationLinkA link to destination where task was uploaded
DestinationStatusA status of task