Recent API Changes See what has recently been added
Dec 09 2011

Lossless rotation (MOV format)

Option Allowed Values Default Values
set_rotate
Set rotation meta-data (MOV only).

0 - don't set anything
90 - rotate by 90 degree CW
180 - rotate by 180 degree
270 - rotate by 270 degree CW
source - keep the source value (if any)

0

 

Copy Display Aspect Ratio from Source file

Option Allowed Values Default Values

set_aspect_ratio

Display aspect ratio (DAR). When set, the option keep_aspect_ratio will be ignored. The option only works with the following formats: fl9, 3gp, mp4, m4v, ipod, iphone, ipad, android, ogg, webm, appletv, psp, iphone_stream, ipad_stream.

Positive float value or N:M: where N and M are any positive integers.
source: display aspect ratio will be copied from source file
None

 

GoToMeeting input format added

GoToMeeting sources support is now available in test mode

 

Metadata 'copy' tag added

Format Name Description
copy — copy metatags from the source media

 

Auto de-interlacing added

Format Name Allowed Values Default Values
deinterlacing - Whether to use de-interlacing

yes, no, auto

auto - use de-interlacing if source's scan type is interlaced

auto

 

Dec 09 2011

MPEG-TS format added

(required) output

Format type

flv, fl9, wmv, 3gp, mp4, m4v, ipod, iphone, ipad, android, ogg, webm, appletv, psp, zune, mp3, wma, m4a, thumbnail, image, mpeg2 (just experimental feature, please use with care, feedback is welcome), iphone_stream, ipad_stream, muxer, wowza, wowza_multibitrate, roku_800, roku_1200, roku_1800, roku_2700, roku_hls, mpegts None.

force_interlaced

Interlaced encoding type

mpegts: tff,bff,no mpegts: tff

 

Sep 28 2011.

Fade In / Fade Out effects

 <!-- Format fields -->
    ...
    <fade_in>[FadeInStart:FadeInDuration]</fade_in>
    <fade_out>[FadeOutStart:FadeOutDuration]</fade_out>
    ... 

 

Option Allowed Values Default Values
fade_in
Add fade in effect to audio and video streams.
FadeInStart:FadeInDuration - where both parameters are positive float values

FadeInStart - start of fade in effect (in seconds)

FadeInDuration - duration of fade in effect (in seconds)
 
None
fade_out
Add fade out effect to audio and video streams.
FadeOutStart:FadeOutDuration - where both parameters are positive float values

FadeOutStart - start of fade out effect (in seconds). If you will specify this parameter equal to 0, fade out effect will be applied to the end of video/audio

FadeOutDuration - duration of fadeOut effect (in seconds)
 
None

Roku presets

Option Allowed Values Default Values

(required) output

Format type

...
roku_800, roku_1200, roku_1800, roku_2700, roku_hls
None.

 

Sep 19 2011. Audio sync option
Option Allowed Values Default Values

audio_sync

It adjusts the audio stream to match the timestamps, in # of samples per second. 1 is special value that means automatic.

Positive integer None

 

Aug 12 2011.

S3 source option

SourceFile ...
http://[AWS_KEY:AWS_SECRET@][bucket].s3.amazonaws.com/[filename]?nocopy - if 'nocopy' is specified, the source file will be downloaded directly from your bucket (for each encoding task), it saves time, please use it if your buckets are located in the US. If not specified, the source will be copied to encoding.com bucket first, it saves your traffic in case of non-US buckets and more than one encoding task per source.
...

Preset for Wowza Multi-bitrate

<format>
    <!-- Format fields -->
    <output>wowza_multibitrate</output>
    <bitrates>[CommaSeparatedList]</bitrates> 
    <sizes>[CommaSeparatedList]</sizes> 
    <!-- Destination fields -->
    <destination>[DestFile]</destination> <!-- REQUIRED -->
</format>  
Format Name Allowed Values Default Values

bitrates

Comma separated list of video bitrates

One or more valid bitrate values separated by commas 270k,570k,1000k,1200k,1400k

sizes

Comma separated list of video sizes

One or more valid size values separated by commas 320x180,420x270,720x406,1024x576,1080x608

New presets

Option Allowed Values Default Values

(required) output

Format type

...
wowza, wowza_multibitrate.
None.

Keep audio parameters

 <!-- Format fields -->
    ...
    <audio_codec>copy</audio_codec>
    ... 

If you specify audio_codec equal to 'copy', the options audio_channels_number, audio_sample_rate, audio_bitrate will be ignored and their values will be copied from your source file.

PNG with alpha-channel as Logo source

If your logo source is PNG with alpha-channel, set logo_mode equal to 1, to keep transparency.

1 July 2011. Ability to specify the region where file should be processed
<!-- Format fields -->
    ...
        <region>[us-east-1|us-west-1]</region>
    ...
Allow you to specify instance's region where your file should be processed
17 June 2011. Restarting jobs and tasks.
RestartMedia Complete restart the entire job
RestartMediaErrors Only retry tasks ended with error
RestartMediaTask Only restart the specified task (format). Additional parameter <taskid> must be specified.
24 May 2011. Twin-turbo encoding speed now available
<!-- Format fields -->
    ...
        <twin_turbo>yes</twin_turbo>
    ...
NOTE: Additional encoding bandwidth charges apply, see the Turbo Encoding Help Article for more details.
5 May 2011

Muxing from different sources

Note: muxing is supported for only two sources now.
Sample XML to mux video from one source and audio from another one:

<?xml version="1.0"?>
<query>
  <action>AddMedia</action>
  <userid/>
  <userkey/>
  <source>[Video source]</source>
  <source>[Audio source]</source>

  <format>
    <output>muxer</output>
    <target>ntsc-dvd</target>
    <maps>0:0,1:0</maps>
  </format>
</query> 

 

21 Apr 2011.

Custom presets in API call

<!-- Format fields -->

        <output>[PRESET_NAME]</output>
You could create and configure your custom output format in the user Interface. After that you will be able to use custom output formats in API calls as well.

Setting display aspect ratio

<!-- Format fields -->
        <set_aspect_ratio>[ASPECT_RATIO]</set_aspect_ratio>


Format Name Allowed Values Default Values
set_aspect_ratio — Display aspect ratio (DAR). When set, the option keep_aspect_ratio will be ignored. The option only has effect when used with the following formats: fl9, 3gp, mp4, m4v, ipod, iphone, ipad, android, ogg, webm, appletv, psp, iphone_stream, ipad_stream Positive float value or N:M - where N and M are any positive integers. None

Thumbnail time in intervals

Added ability to make thumbnail each time interval by sign '!'. Thumbnail image files will be named with number at the end.

Added a Noise Reduction filter

<format>
    <!-- Format fields -->
        <noise_reduction>luma_spatial:chroma_spatial:luma_temp</noise_reduction>
    </format> 
Format Name Allowed Values Default Values
luma_spatial — Spatial Luma Strength. [0,255] 4:3:6
chroma_spatial — Spatial Chroma Strength [0,255] 4:3:6
luma_temp — Temporal Luma Strength. [0,255] 4:3:6

New MPEG-2 options

Audio codec MP2 added and set as default for MPEG-2.

    <format>
    <!-- Format fields -->
        <output>mpeg2</output>
        <keyframe>[12|15|25|30]</keyframe> 
        <bframes>[2|0]</bframes>
        <gop>[cgop|sgop]</gop>
    </format>   
Format Name Allowed Values Default Values
keyframe 12 [12 PAL DVD] , 15 [15 NTSC DVD], 25 [25 PAL Long GOP], 30 [30 NTSC Long GOP] 15
bframes 2 [on = IBBPBBP], 0 [off = IPPPPPP] 2
gop sgop [Strict (Locked)], cgop [Closed (Scene Detection)] cgop

 

Audio codec MP2 added and set as default for MPEG-2.

5 Mar 2011. Instant encoding option (experimental)
<?xml version="1.0"?>
<query>
<!-- Main fields -->
    <userid>[UserID]</userid>
    <userkey>[UserKey]</userkey>
    <action>[Action]</action>
    <mediaid>[MediaID]</mediaid>
    <source>[SourceFile]</source>
    <source>[SourceFile1]</source> <!-- if multiple SourceFile added, they will be concatenated --> 
    ... 
    <source>[SourceFileN]</source>
    <notify>[NotifyURL]</notify>
    <instant>[yes|no]</instant>
 
 
instant — setting to 'yes' makes files to begin being encoded while being downloaded. Also, if the file size increases while downloading or soon after, the tail will be downloaded and concatenated.
13 Feb 2011. New image format (tiff)
Format Name Allowed values: Default values:
image_format [required] — Format of resulting image. jpg, png, gif, tiff jpg

 

Concatenate Videos

With this feature, you can combine multiple source video files into one file.  To use this feature via the User Interface, you can add multiple video sources in the "Add Media" section and they will automatically combine into one file (in sequential order) during the encoding process. To utilize this concatenation feature via the API, you should use several <source> elements in your XML request which will be added sequentially during the encoding process.  In addition, you can use different source video URLs / locations (HTTP, FTP, S3, CloudFiles) along with different media properties for each source video (format, frame size, bitrate, codec, etc...).  [Read more]  For example:



<?xml version="1.0"?>
<query>
<!-- Main fields -->
    <userid>[UserID]</userid>
    <userkey>[UserKey]</userkey>
    <action>[Action]</action>
    <mediaid>[MediaID]</mediaid>
    <source>[SourceFile]</source>
    <source>[SourceFile1]</source> <!-- if multiple SourceFile added, they will be concatenated --> 
    ... 
    <source>[SourceFileN]</source>

 

24 Dec 2010

Multiple source (combine several video files to one file)



<?xml version="1.0"?>
<query>
<!-- Main fields -->
    <userid>[UserID]</userid>
    <userkey>[UserKey]</userkey>
    <action>[Action]</action>
    <mediaid>[MediaID]</mediaid>
    <source>[SourceFile]</source>
    <source>[SourceFile1]</source> 
    <!-- if multiple SourceFile added, they will be concatenated --> 
    ... 
    <source>[SourceFileN]</source>
SourceFile1..SourceFileN – you can specify several source files as well. All of them will be combined to one file (in sequential order) during the encoding process. You can use different source URLs (HTTP, FTP, S3, CloudFiles) with different media properties (format, frame size, bitrate, codec, etc.) Read more

Multiple destination for each format (task)

Destination fields

There can by multiple <destination> elements within each <format>.
...
GetStatus action
<?xml version="1.0"?>
...
    <format>
        <id>[ID]</id>
        <status>[Status]</status>
        ...
        <destination>[URL]</destination>
        <destination_status>[Saved|Error (ErrorDescription)]</destination_status> 
        <destination>[URL_2]</destination>
        <destination_status>[Saved|Error (ErrorDescription)]</destination_status>
        ...
        <destination>[URL_N]</destination>
        <destination_status>[Saved|Error (ErrorDescription)]</destination_status>
    </format>
...

Encoding Result XML format

<format>  
    <output>[OutputFormat]</output>  
    <destination>[URL]</destination> <!-- Only in case of Status = Finished -->  
    <destination_status>[Saved|Error (ErrorDescription)]</destination_status>   
    <destination>[URL_2]</destination>  
    <destination_status>[Saved|Error (ErrorDescription)]</destination_status>  
    ...  
    <destination>[URL_N]</destination>  
    <destination_status>[Saved|Error (ErrorDescription)]</destination_status>  
    ...  
</format>   
</result>  

 

18 Nov 2010. Specifying AWS user ID and content-type for S3 object

Thumbnail time in percentage rate

Format Name Allowed Values
time — Timestamp (in seconds or percentage rate) to capture thumbnail. Non-negative number greater than 0.01 or hh:mm:ss.ms or 1-100% percentage rate.

Destination fields

Format Name Allowed Values
destination - The destination URL to put the encoded file. ftp://[user[:password]@]hostname[:port]/[path]/[filename][?passive=yes], sftp://[user[:password]@]hostname[:port]/[path]/[filename], http://[bucket].s3.amazonaws.com/[filename][?acl=public-read | authenticated-read]&canonical_id=AWS_CANONICAL_USER_ID - if you specify AWS canonical user ID in the URL, FULL_CONTROL on the object will be granted to the specified user. Also, you can add ?acl=public-read OR ?acl=authenticated-read parameter. This will explicitly set access rights to the saved object instead of the default settings. http://[bucket].s3.amazonaws.com/[filename][?acl=public-read&content_type=your-own/content-type - if you specify Content type then Amazon will add appropriate Content-type header when the object is accessed via the web.
http://[AWS_KEY:AWS_SECRET@][bucket].s3.amazonaws.com/[filename][?acl=public-read | authenticated-read] - If you need your S3 files to be accessed with your own AWS credentials, add your AWS key/secret to the URL. If you use the Access key and Secret key they must be urlencode. Let the Key and the Secret are: 1ZG3YAKJ8W0VOA9L7WT6, lQT5MsQLirc8owb:SxX/9EhU4M+QarasFelQ0v2M First, we must urlencode the Secret as it contains special URL's characters: ':','+' and '/'. The encoded Secret is: lQT5MsQLirc8owb%3ASxX%2F9EhU4M%2BQarasFelQ0v2M We should not encode the colon between Key and Secret nor the '@' after them.
So, the destination URL will be:
http://1ZG3YAKJ8W0VOA9L7WT6:lQT5MsQLirc8owb%3ASxX%2F9EhU4M%2BQarasFelQ0v2M
@encode.video.s3.amazonaws.com/v/encoded/
http://[RS_USER:RS_KEY@]storage.cloudfiles.com/[path]/[filename] - Virtual URL
https://storage4.clouddrive.com/v1/MossoCloudFS_cea19775-aa94-4d78-8da9-1a7b4bbbd548/your_folder
/file.ext?auth-token=c2633419-7b79-3d58-8417-d63666dddfd5
- Real URL like this if you were authenticated yourself recently Note: do not forget to encode your AWS_SECRET, specifically replace '/ ' with '%2F'. If you don't specify AWS key/secret, the bucket must have READ and WRITE permissions for AWS user 1a85ad8fea02b4d948b962948f69972a72da6bed800a7e9ca7d0b43dc61d5869, See
http://docs.amazonwebservices.com/AmazonS3/latest/dev/ACLOverview.html#SpecifyingGrantee for details.

 

12 Oct 2010. VP6 Flix
Format Name Allowed Values / Description
output (required) – output format. Specify format of encoded file. flv, fl9, wmv, 3gp, mp4, m4v, ipod, iphone, ipad, android, ogg, webm, appletv, psp, zune, mp3, wma, m4a, thumbnail*, image , mpeg2 *, iphone_stream, ipad_stream, vp6_flix .
vp6_profile Encoding profile
noise_reduction Determines the level of noise filtering to apply in the preprocessor.
upct Parameter for undershoot percentage.
kfinttype Keyframe interval type.
keyframe Keyframe period (in frames)
sharpness Controls the sharpness of the image in the output
cxmode Compress mode
logo_transparent Transparent color mask. Use for vp6_flix format only.

 

29 Sep 2010. Metadata tags added
Format Name Description
title — Title of the media
copyright — Copyright information
author — Source author
description — Media description
album — Media album

 

16 Sep 2010. WebM/VP8 and Ogg/Theora presets added
Format Name Allowed Values Default Values
output (required) — output format. Specify format of encoded file. flv, fl9, wmv, 3gp, mp4, m4v, ipod, iphone, ipad, android, ogg, webm, appletv, psp, zune, mp3, wma, m4a, thumbnail*, image **, mpeg2 ***, iphone_stream, ipad_stream ****.  
video_codec - Video codec. flv: flv, libx264, vp6 **
fl9: libx264
wmv, zune: wmv2, msmpeg4
3gp, android: h263, mpeg4, libx264
m4v: mpeg4
mp4, ipod, iphone, ipad, appletv, psp: mpeg4, libx264
ogg: libtheora
webm: libvpx
mp3, wma: none
mpeg2: mpeg2video
flv: flv fl9, ipod, iphone, ipad: libx264
wmv, zune: wmv2
3gp: h263
mp4, m4v,appletv, psp, android: mpeg4
ogg: libtheora
webm: libvpx

mpeg2: mpeg2video
audio_bitrate - Audio bitrate. Nk - where N is any non-zero integer
3gp: 4.75k, 5.15k, 5.9k, 6.7k, 7.4k, 7.95k, 10.2k, 12.2k
flv, wmv, mp3, wma, zune: 32k, 40k, 48k, 56k, 64k, 80k, 96k, 112k, 128k, 144k, 160k, 192k, 224k, 256k, 320k
ogg, webm: 45k,64k, 80k, 96k, 112k, 128k, 160k, 192k, 224k, 256k, 320k, 500k
All: 64k
3gp, android: 12.2k
ipod, iphone, ipad, psp: 128k
audio_sample_rate - Audio sampling frequency (Hz). All: any non-zero integer.
3gp: 8000
flv, mp3: 11025, 22050, 44100
ogg, webm: 16000, 32000, 44100, 22050, 11025, 192000
wmv, wma, zune: 11025, 22050, 32000, 44100, 48000
mpeg2: 44100, 48000
All: none
3gp, android: 8000
flv, mp3, zune, mpeg2: 44100
audio_codec - Audio codec. mp3: libmp3lame
m4a: libfaac
flv: libmp3lame, libfaac
fl9, mp4, m4v, ipod, iphone, ipad, appletv, psp: libfaac
wmv, wma, zune: wmav2, libmp3lame
ogg, webm: libvorbis
3gp: libamr_nb
android: libamr_nb, libfaac
mpeg2: pcm_s16be, pcm_s16le
flv, mp3: libmp3lame
fl9, mp4, m4v, ipod, iphone, ipad, appletv, psp: libfaac
wmv, zune: wmav2
ogg, webm: libvorbis
3gp, android: libamr_nb
mpeg2: pcm_s16be
m4a: libfaac

 

16 Sep 2010. Hinting MP4 files
Format Name Allowed Values Default Values
hint - MP4 only. Whether to add RTP data (for streaming servers). yes, no. All: None
mp4: no
29 Jul 2010. Android preset added
Format Name Allowed Values
output [required] — output format. Specify format of encoded file. flv, fl9, wmv, 3gp, mp4, m4v, ipod, iphone, ipad, android, appletv, psp, zune, mp3, wma, m4a, thumbnail*, image **, mpeg2 ***, iphone_stream, ipad_stream ****.

 

14 Jul 2010. New defaults and preset for iPhone Streaming
Format Name Allowed Values Default Values
output — output format. Specify format of encoded file. flv, fl9, wmv, 3gp, mp4, m4v, ipod, iphone, ipad, appletv, psp, zune, mp3, wma, m4a, thumbnail*, image **, mpeg2 ***, iphone_stream, ipad_stream ****. none
<format>
    <!-- Format fields -->
        <output>[iphone_stream|ipad_stream]</output>
        <bitrates>[CommaSeparatedList]</bitrates> 
        <framerates>[CommaSeparatedList]</framerates> 
        <keyframes>[CommaSeparatedList]</keyframes> 
        <segment_duration>[Duration]</segment_duration>
        <pack_files>[yes|no]</pack_files>
        <add_audio_only>[yes|no]</add_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>
    <!-- Destination fields -->
        <destination>[DestFile]</destination> <!-- REQUIRED -->
    </format>   
Format Name Allowed Values Default Values
bitrates — Comma separated list of video bitrates. One or more valid bitrate values, separated by comma iphone_stream: 600k,400k,200k,110k ipad_stream: 1200k,800k,600k,400k,200k,110k
framerates — Comma separated list of framerates, according to previous parameter One or more valid framerate values, separated by comma iphone_stream: 29.97,29.97,15,10 ipad_stream: 29.97,29.97,29.97,29.97,15,10
keyframes — Comma separated list of keyframe parameters. One or more valid keyframe values, separated by comma iphone_stream: 90,90,45,30 ipad_stream: 90,90,90,90,45,30
segment_duration - Segment duration to split media (in seconds) Non-negative integer 10
pack_files - Whether to pack result files to single tarball yes, no yes
add_audio_only - Whether to add audio-only 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 480x320

 

20 May 2010. Audio-only stream for iPhone Streaming
    <format>
    <!-- Format fields -->
        <output>iphone_stream</output>
        <bitrates>[CommaSeparatedList]</bitrates> 
        <segment_duration>[Duration]</segment_duration>
        <pack_files>[yes|no]</pack_files>
        <add_audio_only>[yes|no]</add_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>
    <!-- Destination fields -->
        <destination>[DestFile]</destination> <!-- optional -->
    </format>   
Format Name Allowed Values Default Values
add_audio_only - Whether to add audio-only 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 320x240
6 Apr 2010. iPad preset added
Format Name Allowed Values
output (required) — output format. Specify format of encoded file. flv, fl9, wmv, 3gp, mp4, m4v, ipod, iphone, ipad, appletv, psp, zune, mp3, wma, m4a, thumbnail*, image **, mpeg2 ***, iphone_stream ****.

 

3 Feb 2010

iPhone Streaming Features

    <format>
    <!-- Format fields -->
        <output>iphone_stream</output>
        <bitrates>[CommaSeparatedList]</bitrates> 
        <segment_duration>[Duration]</segment_duration>
        <pack_files>[yes|no]</pack_files>
    <!-- Destination fields -->
        <destination>[DestFile]</destination> <!-- optional -->
    </format> 

With the following specific parameters:

Format Name Allowed Values Default Values
bitrates — Comma separated list of bitrates. One or more valid bitrate values, separated by comma 96k,256k,800k
segment_duration - Segment duration to split media (in seconds) Non-negative integer 10
pack_files - Whether to pack result files to single tarball yes, no yes

Image Converting Changes

<format>
    <!-- Format fields -->
        <output>image</output>
        <image_format>jpg</image_format>
        <resize_method>resize</resize_method>
        <size>560x420</size>
        <keep_aspect_ratio>yes</keep_aspect_ratio>
        <quality>75</quality>
        <sharpen_radius>1</sharpen_radius>
        <sharpen_sigma>0.5</sharpen_sigma>
        <remove_metadata>no</remove_metadata>
    <!-- Destination fields -->
        <destination>[DestFile]</destination>
    </format>   

With the following specific parameters:

Format Name Allowed Values Default Values
image_format [required] — Format of resulting image. jpg, png, gif jpg
size — Size of resulting image. WxH or Wx0 or 0xH or Wx or xH, where W and H are positive integers none
resize_method - How the original picture will be inscribed to new size resize, crop, combine resize
keep_aspect_ratio - Whether to keep width to height ratio of original picture yes, no yes
quality - JPEG quality jpg: 1-100
All: none
80
sharpen_radius - Sharpen radius (use 0 in most cases) Integer: 0-10 none
sharpen_sigma - Sharpen amount (best are 0.5-1.0) Float: 0, 0.2-10 0
remove_metadata - Whether to remove image meta data (incl. EXIF) yes, no no

Advanced H.264 Parameters

To see the example for parameters please follow this link

23 Dec 2009. Extended GetStatus action

Simple mode

<?xml version="1.0"?>
<response>
    <id>[MediaID]</id>
    <userid>[UserID]</userid>
    <sourcefile>[SourceFile]</sourcefile>
    <status>[MediaStatus]</status>
    <notifyurl>[NotifyURL]</notifyurl>
    <created>[Date]</created>
    <started>[Date]</started>
    <finished>[Date]</finished>
    <prevstatus>[MediaStatus]</prevstatus>
    <downloaded>[Date]</downloaded>
    <uploaded>[Date]</uploaded>
    <time_left>[TotalTimeLeft]</time_left>
    <progress>[TotalProgress]</progress>
    <time_left_current>[StatusTimeLeft]</time_left_current>
    <progress_current>[StatusProgress]</progress_current>   
    <format>
        <id>[ID]</id>
        <status>[Status]</status>
        <created>[Date]</created>
        <started>[Date]</started>
        <finished>[Date]</finished>
        [FormatFields]
        <s3_destination>[TempS3Link]</s3_destination> <!-- optional -->
        <cf_destination>[TempCFLink]</cf_destination> <!-- optional -->
    </format>

    <format>
    …
    </format>
</response>
 
Where Date is of the format: YYYY-MM-DD HH:MM:SS 
FormatFields is a set of fields corresponding to <format> section of an user's API request
TotalTimeLeft is an estimated time until the media processing would be finished
StatusTimeLeft is an estimated time left for the media's current status
TotalProgress is an estimated progress for entire media processing (in percent)
StatusProgress is an estimated progress for the media's current status (in percent)
TempS3Link S3 URL of the encoded file, if the <destination> was empty and result put to S3
TempCFLink CDN URL of the encoded file, if the <destination> was empty and result put to Rackspace CloudFiles
 
MediaStatus can take the following values: 'New', 'Downloading', 'Ready to process', 'Waiting for encoder', 'Processing', 'Saving', 'Finished', 'Error'.
 
Status can take the following values: 'New', 'Waiting for encoder', 'Processing', 'Saving', 'Finished', 'Error'.
 

Extended (batch) mode

to request the status of several medias in one request:
 
Request:
<query>
        <action>GetStatus</action>
        <userid>[UserID]</userid>
        <userkey>[UserKey]</userkey>
        <extended>yes</extended>
        <mediaid>[CommaSeparatedList]</mediaid>
</query>
 
Response:
<response>
<job>
    <id>[MediaID]</id>
    <userid>[UserID]</userid>
    <sourcefile>[SourceFile]</sourcefile>
    <status>[MediaStatus]</status>
    <notifyurl>[NotifyURL]</notifyurl>
    <created>[Date]</created>
    <started>[Date]</started>
    <finished>[Date]</finished>
    <prevstatus>[MediaStatus]</prevstatus>
    <downloaded>[Date]</downloaded>
    <filesize>[FileSize]</filesize>
    <processor>[AMAZON | RACKSPACE]</processor>
    <progress>[TotalProgress]</progress>
    <time_left>[TotalTimeLeft]</time_left>

    <format>
        <id>[ID]</id>
        <status>[Status]</status>
        <created>[Date]</created>
        <started>[Date]</started>
        <finished>[Date]</finished>
        <s3_destination>[TempS3Link]</s3_destination> <!-- optional -->
        <cf_destination>[TempCFLink]</cf_destination> <!-- optional -->
        <convertedsize>[FileSize]</convertedsize>
        <time_left>[TotalTimeLeft]</time_left>
        <progress>[TotalProgress]</progress>
        <time_left_current>[StatusTimeLeft]</time_left_current>
        <progress_current>[StatusPorgress]</progress_current>
        <file_size>[FileSize]</file_size>
    </format>

    <format>
    …
    </format>
</job>

<job>
...
</job>
...
</response>

 

22 Dec 2009

MPEG-2 output

Format Name Allowed Values Default Values
output (required) – output format. Specify format of encoded file. flv, fl9, wmv, 3gp, mp4, m4v, ipod, iphone, appletv, psp, zune, mp3, wma, mpeg2, thumbnail*, image **, mpeg2 ***.  
video_codec - Video codec. flv: flv, libx264, vp6 **
fl9: libx264
wmv, zune: wmv2, msmpeg4
3gp: h263, libx264
m4v: mpeg4
mp4, ipod, iphone, appletv, psp: mpeg4, libx264
mpeg2: mpeg2video
mp3, wma: none
flv: flv
fl9: libx264
wmv, zune: wmv2
3gp: h263
mp4, m4v, ipod, iphone, appletv, psp: mpeg4
mpeg2: mpeg2video
* - see Thumbnail Features
** - see Image Converting Features
*** - just experimental feature, please use with case, feedback is welcome
audio_sample_rate - Audio sampling frequency (Hz). All: any non-zero integer.
3gp: 8000
flv, mp3: 11025, 22050, 44100
wmv, wma, zune: 11025, 22050, 32000, 44100, 48000 mpeg2: 44100, 48000
All: none
3gp: 8000
flv, mp3, zune, mpeg2: 44100
audio_codec - Audio codec. mp3: libmp3lame
flv: libmp3lame, libfaac
fl9, mp4, m4v, ipod, iphone, appletv, psp: libfaac
wmv, wma, zune: wmav2, libmp3lame
3gp: libamr_nb
mpeg2: pcm_s16be, pcm_s16le
flv, mp3: libmp3lame
fl9, mp4, m4v, ipod, iphone, appletv, psp: libfaac
wmv, zune: wmav2
3gp: libamr_nb
mpeg2: pcm_s16be

 

Using Rackspace Cloud Files as a source or a destination

 
To specify your source file are to be taken from or result files to be put to Rackspace Cloud Files folder, you should specify your source or destination URLs in two different ways:
 
1) virtual URL http://RS_USER:RS_KEY@storage.cloudfiles.com/your_folder/file.ext
 
2) Real URL if you were authenticated yourself recently like this:
 
https://storage4.clouddrive.com/v1/MossoCloudFS_cea19775-aa94-4d78-8da9-1a7b4bbbd548/your_folder/file.ext?auth-token=c2633419-7b79-3d58-8417-d63666dddfd5
 

Image Converting Features

 
    <format>
    <!-- Format fields -->
        <output>image</output>
        <image_format>jpg</image_format>
        <resize_method>resize</resize_method>
        <size>560x420</size>
        <keep_aspect_ratio>yes</keep_aspect_ratio>
        <quality>75</quality>
        <sharpen_radius>1</sharpen_radius>
        <sharpen_sigma>0.5</sharpen_sigma>
    <!-- Destination fields -->
        <destination>[DestFile]</destination>
    </format>   
 
With the following specific parameters:
 
Format Name Allowed Values Default Values
image_format [required] – Format of resulting image. jpg, png, gif jpg
size [required] – Size of resulting image. WxH or Wx or xH, where W and H are positive integers none
resize_method - How the original picture will be inscribed to new size resize, crop, combine resize
keep_aspect_ratio - Whether to keep width to height ratio of original picture yes, no yes
quality - JPEG quality jpg: 1-100 All: none 80
sharpen_radius - Sharpen radius (use 0 in most cases) Integer: 0-10 none
sharpen_sigma - Sharpen amount (best are 0.5-1.0) Float: 0.2-10 0.5

 

18 Nov 2009

AAC added as an option for FLV

Format Name Allowed values: Default values:
audio_codec [optional] — Audio codec. mp3: libmp3lame
flv: libmp3lame, libfaac
fl9, mp4, m4v, ipod, iphone, appletv, psp: libfaac
wmv, wma, zune: wmav2, libmp3lame
3gp: libamr_nb
flv, mp3: libmp3lame
fl9, mp4, m4v, ipod, iphone, appletv, psp: libfaac
wmv, zune: wmav2
3gp: libamr_nb

Frame resizing ability added

Format Name Allowed Values Default Values
keep_aspect_ratio - Whether to keep width to height ratio of the original frame size yes, no yes
Additional watermarking options

Logo fields

Format Name Allowed Values Default Values
logo_source [required] - The URL of the logo image. The image format can be GIF, JPG or PNG. http://[user[:password]@]hostname[:port]/[path]/[filename],
ftp://[user[:password]@]hostname[:port]/[path]/[filename][?passive=yes],
sftp://[user[:password]@]hostname[:port]/[path]/[filename],
none
logo_x  - left offset of logo image non-negative integer 10
logo_y  - top offset of logo image non-negative integer 10
logo_mode  - video and watermarking picture mixing mode 0, 1 1
logo_threshold  - Threshold color mask 6-digits hexadecimal 000000-FFFFFF 000000

How mode and threshold work

logo_mode 0: The watermark picture works like this (assuming color intensities 0..0xFF): Per color do this (assuming logo_threshold is '808080'): If mask color is 0x80, no change to the original frame. If mask color is < 0x80 the absolute difference is subtracted from the frame. If result < 0, result = 0. If mask color is > 0x80 the absolute difference is added to the frame. If result > 0xFF, result = 0xFF. If threshold is 000000 the color value of watermark is added to the destination.

logo_mode 1: Per color do this: If mask color > threshold color then the watermark pixel is used.

24 June 2009. Turbo encoding speed now available
<!-- Format fields -->
    ...
        <turbo>yes</turbo>
    ...
NOTE: Additional encoding bandwidth charges apply, see the Turbo Encoding Help Article for more details.
21 May 2009

Audio output formats added

Format Name Allowed Values Default Values
output (required) – output format. Specify format of encoded file. flv, fl9, wmv, 3gp, mp4, m4v, ipod, iphone, appletv, psp, zune, mp3, wma and thumbnail*. none

Adjusting audio volume

<!-- Format fields -->
    ...
        <audio_volume>[Volume]</audio_volume>
    ...
 
Format Name Allowed Values Default Values
audio_volume - Audio volume level, in percent. non-negative integer 100

H.264 in FLV container

Format Name Allowed Values Default Values
video_codec - Video codec. flv: flv, libx264, vp6 **
fl9: libx264
wmv, zune: wmv2, msmpeg4
3gp: h263, libx264
m4v: mpeg4
mp4, ipod, iphone, appletv, psp: mpeg4, libx264
mp3, wma: none
flv: flv
fl9: libx264
wmv, zune: wmv2
3gp: h263
mp4, m4v, ipod, iphone, appletv, psp: mpeg4
mp3, wma: none

 

27 Feb 2009. thumb_* parameters are going away
Format Name Allowed Values Default Values
thumb_time [optional, deprecated***] - Timestamp (in seconds) to capture thumbnail. integer None
thumb_size [optional, deprecated***] - Thumbnail size (in pixels). WxH, where W and H are any non-zero integers. None
thumb_destination [optional, deprecated***] - The destination URL to put the thumbnail. ftp://[user]:[password]@[server]/[path]/[filename],
http://[AWS_KEY:AWS_SECRET@][bucket].s3.amazonaws.com/[filename]
None
*** - see Thumbnail Features chapter

 

30 Dec 2008

VP6 encoding moved under FLV format

Format Name Allowed Values Default Values
video_codec — Video codec. flv: flv, vp6 fl9: libx264 wmv, zune: wmv2, msmpeg4 3gp: h263, libx264 m4v: mpeg4 mp4, ipod, iphone, appletv, psp: mpeg4, libx264 flv: flv fl9: libx264 wmv, zune: wmv2 3gp: h263 mp4, m4v, ipod, iphone, appletv, psp: mpeg4

VP6 Features

If you choose 'vp6' codec for 'flv' output format, your XML query will differ (less number of parameters are supported, see below):

<format>
            <output>flv</output>
            <video_codec>vp6</video_codec>
            <bitrate></bitrate> <!-- optional -->
            <size></size> <!-- optional -->
            <audio_bitrate>64k</audio_bitrate> <!-- optional -->
            <audio_sample_rate>44100<audio_sample_rate> <!-- optional -->
            <audio_channels_number>2</audio_channels_number> <!-- optional -->
            <framerate></framerate> <!-- optional -->
            <destination></destination> <!-- optional -->
</format>
 
 
Note: old-style requests with <output>vp6</output> are deprecated and will be automatically converted to the new form.
 
Custom keyframe interval and video splicing added
 
<?xml version="1.0"?>
<query>
<!-- Format fields -->
        ...             
        <keyframe>[Keyframe Period (GOP)]</keyframe>
        <start>[Start From]</start>
        <duration>[Result Duration]</duration>
<!-- Destination fields -->
        ...             
<!-- Logo fields (OPTIONAL) -->     
        ...
    </format>
</query>
 

Format fields

 
Format Name Allowed Values Default Values
keyframe — Keyframe period, in frames. positive integer. 300
start — Start encoding from (sec). non-negative integer. None
duration — Duration (sec). positive integer. None

 

26 Dec 2008. H.264 is now available for mp4, ipod, iphone, appletv, psp and 3gp formats
Format Name Allowed Values
video_codec — Video codec. flv: flv
fl9: libx264
wmv, zune: wmv2, msmpeg4
3gp: h263, libx264
m4v: mpeg4
mp4, ipod, iphone, appletv, psp: mpeg4, libx264

 

6 Nov 2008. Automatic frame size calculation (maintaining aspect ratio)
Format Name Allowed Values Default Values
size — Video frame size. All: WxH, where W and N are any even integers.
3gp: 128x96, 176x144, 352x288, 704x576, 1408x1152
ipod: 320x240, 640x480
iphone: 480x368
appletv: 710x480
zune: 320x180, 320x240
All: none
3gp: 176x144
iphone: 480x368
appletv: 710x480
psp: 368x192
zune: 320x180
Note: You can specify only one dimension: either width or height. In this case, set other dimension to 0. (I.e. 640x0).
21 Oct 2008. Additional encoding options
<?xml version="1.0"?>
<query>
<!-- Format fields -->
        <output>[Output format]</output>
        <video_codec>[Video Codec]</video_codec>
        <audio_codec>[Audio Codec]</audio_codec>
        <bitrate>[Video bitrate]</bitrate>
        <audio_bitrate>[Audio bitrate]</audio_bitrate>
        <audio_sample_rate>[Audio quality]</audio_sample_rate>
        <size>[Size]</size>
        <crop_left>[Crop Left]</crop_left>
        <crop_top>[Crop Top]</crop_top>
        <crop_right>[Crop Right]</crop_right>
        <crop_bottom>[Crop Bottom]</crop_bottom>
        <thumb_time>[Thumb time]</thumb_time>
        <thumb_size>[Thumb size]</thumb_size>
        <add_meta>[yes/no]</add_meta>
        <rc_init_occupancy>[RC Occupancy]</rc_init_occupancy>
        <minrate>[Min Rate]</minrate>
        <maxrate>[Max Rate]</maxrate>
        <bufsize>[RC Buffer Size]</bufisize>
<!-- Destination fields -->
        ...             
<!-- Logo fields (OPTIONAL) -->     
        ...
    </format>
</query>
...

Format fields

Format Name Allowed Values Default Values
maxrate - Maximum allowed video bitrate. N or Nk - where N is any non-zero integer. None
minrate - Minimum allowed video bitrate. N or Nk - where N is any non-zero integer. None
bufsize - Rate control buffer size (bits). N or Nk - where N is any non-zero integer. None
rc_init_occpancy - Initial rate control buffer occupancy (bits). N or Nk - where N is any non-zero integer. None

 

20 Oct 2008. Additional S3 Options

Main fields

UserID – an unique user identifier. Can be taken from user's page.
UserKey – user's key string. Creates automatically when user created and can be changed by user.
Action – the action to be performed.
  • AddMedia – add new media to user's media list, creates new items in a queue according to formats specified in XML
  • AddMediaBenchmark - add new media to user's media list and set a flag for NOT processing it after downloading. Format fields could be specified as well. If NotifyURL is set, a notification will be sent after the media will have been ready for processing.
  • UpdateMedia – replace information about existing media's formats. All old format items will be deleted, and the new ones added.
  • ProcessMedia - start encoding of previously downloaded media (one that added with AddMediaBenchmark action)
  • CancelMedia – delete specified media and all its items in queue
  • GetMediaList – return list of user's media
  • GetStatus – return information about selected user's media and all its items in queue
  • GetMediaInfo - returns some video parameters of the specified media, if available
MediaID – an unique identifier of media. This field must be specified for the following actions: UpdateMedia, CancelMedia, GetStatus.
SourceFile – media source file. It can be in the following formats: http://[user]:[password]@ [server]/[path]/[filename] or ftp://[user]:[password]@[server]/[path]/[filename] or sftp://[user]:[password]@[server]/[path]/[filename] or http://[AWS_KEY:AWS_PWD@][bucket].s3.amazonaws.com/[filename] – If you need your S3 files to be accessed with your own AWS credentials, add your AWS key/secret to the URL. Note: do not forget to encode your AWS_SECRET, specifically replace '/ ' with '%2F'. If you don't specify AWS key/secret, the object must have READ permission for AWS user 1a85ad8fea02b4d948b962948f69972a72da6bed800a7e9ca7d0b43dc61d5869 (or for all users). See http://docs.amazonwebservices.com/AmazonS3/latest/dev/ACLOverview.html#SpecifyingGrantee for details. This field must be specified only for AddMedia and AddMediaBenchmark actions.
NotifyURL – could be either an HTTP(S) URL of the script the result would be posted to, or a mailto: link with email address the result info to be sent. This field may be specified for AddMedia and AddMediaBenchmark actions.
 
...
 

Destination fields

 
Format Name Allowed Values Default Values
destination - The destination URL to put the encoded file. ftp://[user]:[password]@[server]/[path]/[filename][?passive=yes],
sftp://[user]:[password]@[server]/[path]/[filename],
http://[AWS_KEY:AWS_SECRET@][bucket].s3.amazonaws.com/[filename][?acl=public-read | authenticated-read] - If you need your S3 files to be accessed with your own AWS credentials, add your AWS key/secret to the URL.
Note: do not forget to encode your AWS_SECRET, specifically replace '/ ' with '%2F'.
If you don't specify AWS key/secret, the bucket must have WRITE permission for AWS user 1a85ad8fea02b4d948b962948f69972a72da6bed800a7e9ca7d0b43dc61d5869, See http://docs.amazonwebservices.com/AmazonS3/latest/dev/ACLOverview.html#SpecifyingGrantee for details.
Also, you can add ?acl=public-read OR ?acl=authenticated-read after the filename. This will explicitly set access rights to the saved object instead of the default settings.
None
thumb_destination - The destination URL to put the thumbnail. ftp://[user]:[password]@[server]/[path]/[filename], http://[AWS_KEY:AWS_SECRET@][bucket].s3.amazonaws.com/[filename] None

 

20 Oct 2008. Watermarking

XML format for user's API request

<?xml version="1.0"?>
<query>
<!-- Main fields -->
    <userid>[UserID]</userid>
    <userkey>[UserKey]</userkey>
    <action>[Action]</action>
    <mediaid>[MediaID]</mediaid>
    <source>[SourceFile]</source>
    <notify>[NotifyURL]</notify>
    <format>

<!-- Format fields -->
        <output>[Output format]</output>
        <video_codec>[Video Codec]</video_codec>
        <audio_codec>[Audio Codec]</audio_codec>
        <bitrate>[Video bitrate]</bitrate>
        <audio_bitrate>[Audio bitrate]</audio_bitrate>
        <audio_sample_rate>[Audio quality]</audio_sample_rate>
        <size>[Size]</size>
        <crop_left>[Crop Left]</crop_left>
        <crop_top>[Crop Top]</crop_top>
        <crop_right>[Crop Right]</crop_right>
        <crop_bottom>[Crop Bottom]</crop_bottom>
        <thumb_time>[Thumb time]</thumb_time>
        <thumb_size>[Thumb size]</thumb_size>
        <add_meta>[yes/no]</add_meta>

<!-- Destination fields -->
        <destination>[DestFile]</destination>
        <thumb_destination>[Thumb Dest]</thumb_destination>     

<!-- Logo fields (OPTIONAL) -->     
        <logo>
                <logo_source>[LogoURL]</logo_source>
                <logo_x>[LogoLeft]</logo_x>     
                <logo_y>[LogoTop]</logo_y>                      
        </logo>
    </format>
</query>

Logo fields

Format Name Allowed Values Default Values
logo_source [required] - The URL of the logo image. The image format can be GIF, JPG or PNG. http://[user]:[password]@ [server]/[path]/[filename], ftp://[user]:[password]@[server]/[path]/[filename][?passive=yes], sftp://[user]:[password]@[server]/[path]/[filename], None
logo_x - left offset of logo image non-negative integer 10
logo_y - top offset of logo image non-negative integer 10

 

29 Sep 2008. Temporary http download of encoded videos

GetStatus action

<?xml version="1.0"?>
<response>
    <id>[MediaID]</id>
    <userid>[UserID]</userid>
    <sourcefile>[SourceFile]</sourcefile>
    <status>[MediaStatus]</status>
    <notifyurl>[NotifyURL]</notifyurl>
    <created>[Date]</created>
    <started>[Date]</started>
    <finished>[Date]</finished>
    <prevstatus>[MediaStatus]</prevstatus>
    <downloaded>[Date]</downloaded>
    <uploaded>[Date]</uploaded>
    <time_left>[TotalTimeLeft]</time_left>
    <progress>[TotalProgress]</progress>
    <time_left_current>[StatusTimeLeft]</time_left_current>
    <progress_current>[StatusProgress]</progress_current>   
    <format>
        <id>[ID]</id>
        <status>[Status]</status>
        <created>[Date]</created>
        <started>[Date]</started>
        <finished>[Date]</finished>
        [FormatFields]
        <s3_destination>[TempS3Link]</s3_destination>
    </format>

    <format>
    …
    </format>
</response>
 
Where Date is of the format: YYYY-MM-DD HH:MM:SS 
FormatFields is a set of fields corresponding to <format> section of an user's API request
TotalTimeLeft is an estimated time until the media processing would be finished
StatusTimeLeft is an estimated time left for the media's current status
TotalProgress is an estimated progress for entire media processing (in percent)
StatusProgress is an estimated progress for the media's current status (in percent)
TempS3Link S3 URL of the encoded file, if the <destination> was empty
 
29 Sep 2008. Passive FTP support

Main fields

UserID – an unique user identifier. Can be taken from user's page.
UserKey – user's key string. Creates automatically when user created and can be changed by user.
Action – the action to be performed.
  • AddMedia – add new media to user's media list, creates new items in a queue according to formats specified in XML
  • AddMediaBenchmark - add new media to user's media list and set a flag for NOT processing it after downloading. Format fields could be specified as well.
  • UpdateMedia – replace information about existing media's formats. All old format items will be deleted, and the new ones added.
  • ProcessMedia - start encoding of previously downloaded media (one that added with AddMediaBenchmark action)
  • CancelMedia – delete specified media and all its items in queue
  • GetMediaList – return list of user's media
  • GetStatus – return information about selected user's media and all its items in queue
  • GetMediaInfo - returns some video parameters of the specified media, if available
MediaID – an unique identifier of media. This field must be specified for the following actions: UpdateMedia, CancelMedia, GetStatus.
SourceFile – media source file. It can be in the following formats: http://[user]:[password]@ [server]/[path]/[filename] or ftp://[user]:[password]@[server]/[path]/[filename][?passive=yes] or sftp://[user]:[password]@[server]/[path]/[filename] or http://[bucket].s3.amazonaws.com/[filename] – the object must have READ permission for AWS user 1a85ad8fea02b4d948b962948f69972a72da6bed800a7e9ca7d0b43dc61d5869 (or for all users). See http://docs.amazonwebservices.com/AmazonS3/latest/dev/ACLOverview.html#SpecifyingGranteefor details. This field must be specified only for AddMedia action.
 
NotifyURL – could be either an URL of the script the result would be posted to, or a mailto: link with email address the result info to be sent. This field may be specified for AddMedia action.

Destination fields

Format Name Allowed Values Default Values
destination - The destination URL to put the encoded file. ftp://[user]:[password]@[server]/[path]/[filename][?passive=yes], sftp://[user]:[password]@[server]/[path]/[filename], http://[bucket].s3.amazonaws.com/[filename] (the bucket must have WRITE permission for AWS user 1a85ad8fea02b4d948b962948f69972a72da6bed800a7e9ca7d0b43dc61d5869, See http://docs.amazonwebservices.com/AmazonS3/latest/dev/ACLOverview.html#SpecifyingGrantee for details).
 
None
thumb_destination - The destination URL to put the thumbnail. ftp://[user]:[password]@[server]/[path]/[filename], http://[bucket].s3.amazonaws.com/[filename] (the bucket must have WRITE permission for AWS user 1a85ad8fea02b4d948b962948f69972a72da6bed800a7e9ca7d0b43dc61d5869, See http://docs.amazonwebservices.com/AmazonS3/latest/dev/ACLOverview.html#SpecifyingGrantee for details).
 
None

Note: Adding ?passive=yes to the FTP URL forces downloader/uploader use Passive Mode for FTP Transfer. Also, you can specify ?passive=no (the default) explicitly. It will take the same effect that if you don't specify this parameter at all.

Realtime status updates

GetStatus action

 
<?xml version="1.0"?>
<response>
    <id>[MediaID]</id>
    <userid>[UserID]</userid>
    <sourcefile>[SourceFile]</sourcefile>
    <status>[MediaStatus]</status>
    <notifyurl>[NotifyURL]</notifyurl>
    <created>[Date]</created>
    <started>[Date]</started>
    <finished>[Date]</finished>
    <downloaded>[Date]</downloaded>
    <time_left>[TotalTimeLeft]</time_left>
    <progress>[TotalProgress]</progress>
    <time_left_current>[StatusTimeLeft]</time_left_current>
    <progress_current>[StatusProgress]</progress_current>   
    <format>
        <id>[ID]</id>
        <status>[Status]</status>
        <created>[Date]</created>
        <started>[Date]</started>
        <finished>[Date]</finished>
        [FormatFields]
    </format>

    <format>
    …
    </format>
</response>
 
Where Date is of the format: YYYY-MM-DD HH:MM:SS 
FormatFields is a set of fields corresponding to <format> section of an user's API request
TotalTimeLeft is an estimated time until the media processing would be finished
StatusTimeLeft is an estimated time left for the media's current status
TotalProgress is an estimated progress for entire media processing (in percent)
StatusProgress is an estimated progress for the media's current status (in percent)
Notification after AddMediaBenchMark call

Main fields

UserID – an unique user identifier. Can be taken from user's page.
UserKey – user's key string. Creates automatically when user created and can be changed by user.
Action – the action to be performed.
  • AddMedia – add new media to user's media list, creates new items in a queue according to formats specified in XML
  • AddMediaBenchmark - add new media to user's media list and set a flag for NOT processing it after downloading. Format fields could be specified as well. If NotifyURL is set, a notification will be sent after the media will have been ready for processing.
 
28 Aug 2008. API requests through SSL

The XML API Overview

The communication with the encoding.com is realized through a single interface: by sending HTTP(S) requests to the manage.encoding.com/. All client requests and server answers use XML format. Client must send HTTP(S) POST request with single parameter named xml.
The server response is a normal XML document.
 
20 Aug 2008. Additional information added to GetMediaInfo response

GetMediaInfo action

<?xml version="1.0"?>
<response>
    <bitrate>364k</bitrate>
    <duration>175.21</duration>
    <video_codec>h264</video_codec>
    <frame_rate>23.98</frame_rate>  
    <audio_sample_rate>44100</audio_sample_rate>        
    <size>352x288</size>
</response>
 
19 Aug 2008. New API features

Format fields

The following parameters was added:
Format Name Allowed Values Default Values
two_pass - Whether to use 2-pass encoding yes, no no
cbr - Whether to use CBR (Constant bitrate) yes, no no
deinterlacing - Whether to use de-interlacing yes, no no

 

06 Aug 2008. Default frame size changed
At the section XML format for user's API request
Changed:

Format fields

Format Name Allowed Values Default Values
size - Video frame size. All: WxH, whereW and N are any non-zero even integers. 3gp: 128x96, 176x144, 352x288, 704x576, 1408x1152 ipod: 320x240, 640x480 iphone: 480x368 appletv: 710x480 zune: 320x180, 320x240 All: none 3gp: 176x144 iphone: 480x368 appletv: 710x480 psp: 368x192 zune: 320x180
Media Benchmarking API functions
At the section XML format for user's API request
Changed:

Main fields

UserID – an unique user identifier. Can be taken from user's page.
UserKey – user's key string. Creates automatically when user created and can be changed by user.
Action – the action to be performed.
  • AddMedia – add new media to user's media list, creates new items in a queue according to formats specified in XML
  • AddMediaBenchmark - add new media to user's media list and set a flag for NOT processing it after downloading. Format fields could be specified as well.
  • UpdateMedia – replace information about existing media's formats. All old format items will be deleted, and the new ones added.
  • ProcessMedia - start encoding of previously downloaded media (one that added with AddMediaBenchmark action)
  • CancelMedia – delete specified media and all its items in queue
  • GetMediaList – return list of user's media
  • GetStatus – return information about selected user's media and all its items in queue
  • GetMediaInfo - returns some video parameters of the specified media, if available
MediaID – an unique identifier of media. This field must be specified for the following actions: UpdateMedia, CancelMedia, GetStatus.
SourceFile – media source file. It can be in the following formats: http://[user]:[password]@ [server]/[path]/[filename] or ftp://[user]:[password]@[server]/[path]/[filename] or sftp://[user]:[password]@[server]/[path]/[filename] or http://[bucket].s3.amazonaws.com/[filename] – the object must have READ permission for AWS user 1a85ad8fea02b4d948b962948f69972a72da6bed800a7e9ca7d0b43dc61d5869 (or for all users). See http://docs.amazonwebservices.com/AmazonS3/latest/dev/ACLOverview.html#SpecifyingGrantee for details. This field must be specified only for AddMedia action.
 
NotifyURL – could be either an URL of the script the result would be posted to, or a mailto: link with email address the result info to be sent. This field may be specified for AddMedia action.
 
At the section Server Response XML format

Added:
GetMediaInfo action


<?xml version="1.0"?>
<response>
    <bitrate>364k</bitrate>
    <duration>175.21</duration>
    <video_codec>h264</video_codec>
    <size>352x288</size>
</response>

 

15 Jul 2008
At the section XML format for user's API request
Added: 

Multiple Thumbnail Support

Instead of using thumb_ parameters within <format>, you can specify separate encoding task with output = thumbnail:
    <format>
    <!-- Format fields -->
        <output>thumbnail</output>
        <time>[Size]</time>     
        <width>[Width]</width>
        <height>[Size]</height>
    <!-- Destination fields -->
        <destination>[DestFile]</destination>
    </format>   
 
With the following specific parameters:
Format Name Allowed Values Default Values
time – Timestamp (in seconds) to capture thumbnail. Non-negative integer or hh:mm:ss.ms 5
width - Thumbnail width (in pixels) Non-negative integer none
height - Thumbnail height (in pixels) Non-negative integer none

 

destination  — The destination URL to put the thumbnail.
If you specify both width and height, you'll get a thumbnail with these dimensions, and if your video have another aspect ratio than the thumbnail, black spaces will be added to the picture.
If you specify only one parameter from this pair, the other one will be calculated according to your video size.
If none of those parameters specified, the thumbnail will have the same size as your video have.
Now only JPEG format is supported for thumbnails.
 
At the section Server Response XML format
New server response format added:

AddMedia action

<?xml version="1.0"?>
<response>
    <message>Added</message>
    <MediaID>[MediaID]</MediaID>
</response>
3 Jul 2008. VP6 Support
Added:

VP6 Features

If you choose vp6 for output format, your XML query will differ (you can specify only two parameters in addition to output at format fields section):
    <format>
    <!-- Format fields -->
        <output>vp6</output>
        <profile>[VP6 profile]</profile>
        <size>[Size]</size>
    <!-- Destination fields -->
        <destination>[DestFile]</destination>
    </format>   
The specific parameter profile is added:
Format Name Allowed Values Default Values
profile — VP6 profile. VP6-E, VP6-S VP6-E

destination [required] - The destination URL to put the encoded file.