31 July 2014 - Advanced HLS and Notify_upload
over 10 years ago by Encoding.com Product Team
<?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 Name | Description | Allowed Values | Default Values |
---|---|---|---|
Format params | |||
segment_duration | Segment duration to split media (in seconds) | Non-negative integer | 9 |
pack_files | Whether to pack resulting files to a single archive | yes, no | yes |
pack_type | Archive type | tar, zip | tar |
Parameter would be ignored in case of pack_files=no | |||
pack_each_stream | Pack each stream in separate archive | yes, no | no |
Parameter would be ignored in case of pack_files=no | |||
encryption | Encrypt TS segements using AES-128 | yes, no | no |
encryption_key | Encryption key | 32 hexidecimal characters ([0-9a-f]) | None |
encryption_key_file | link to encryption key file | Valid URL | None |
copy_nielsen_metadata | Copy Nielsen audio watermarks and Nielsen ID3 tags from source | yes, no | none |
segmenter | Type 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_only | Result segments will contain only audio stream | yes, no | no |
still_image | Embed still image in the audio-only stream | no, each_segment, first_segment | no |
still_image_time | The time from the beginning of segment to capture still image | Non-negative number greater than 0.01 or hh:mm:ss.ms | None |
still_image_size | The size of the still image | WxH where W and H — positive integers | None |
base_name | Custom stream result file name | valid filename | None |
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]"
}
}
Field | Description |
---|---|
MediaID | A unique identifier of the media |
TaskID | A unique identifier of the task |
DestinationLink | A link to destination where task was uploaded |
DestinationStatus | A status of task |