To stream on-demand media over HTTP using Adobe's HTTP Dynamic Streaming (HDS) protocol chose the preset “Dynamic Streaming” from the encoding.com client interface/watch folder, or the parameter “HDS” from the Encoding.com API.
NOTE: To use Adobe's HDS, the source media must be in MP4, FV4, or FLV compatible formats. Please transcode your video into one of this formats before using the HDS preset.
SPECIAL NOTE: Because the HDS output creates multiple files from a single source file you have the option to tar the output output tar = yes. If you chose to tar your HDS output the file extension of your output video should be set to .tar. For example in the destination feild of your request you would specify:ftp://encoding:XXXXXXX99@ftp.ord11.websitesettings.com/hds/myhdsvideo.tar In this case all multiple outputs will be combined in a single tar ball for you to unpack on your own at a later day. Set tar file = no to send all the files unpacked to the directory specificed in your destination path.
MOST IMPORTANT NOTE: The extension of your output video name should be set to .f4m. For example in the destination feild of your request you would specify ftp://encoding:XXXXXXX99@ftp.ord1-1.websitesettings.com/hds/myhdsvideo.f4m In this example all of the HDS compatible files will be sent to the root directory /hds so it is advised you create a separate directory for the HDS output.
The HDS preset will create the following outputs and send them to your specified destination:
.f4f A segment. The tool outputs one or more F4F files. Each file contains a segment of the source file. Each segment contains one or more fragments of content. A player can use a URL to address each fragment. You may customize your multi bitrate settings, however our default multi bitrate segments are 300k, 600k, and 1200k. Always specifcy bitrates from lowest to highest so the manifest file will be created accurateley.
Assuming source file name was myhdsvideo, you would receive the following .4f4 files:
myhdsvideoSeg1.f4f myhdsvideo_300kSeg1.f4f myhdsvideo_600kSeg1.f4f myhdsvideo_1200kSeg1.f4f
.f4m Flash Media Manifest file. Contains information about codec, resolution, and the availability of multi-bitrate files. In this case your would receive the following .4fm files:
Assuming source file name was myhdsvideo, you would receive the following .4fm files:
myhdsvideo_300k.f4m myhdsvideo_600k.f4m myhdsvideo_1200k.f4m
.f4x Index file. Contains the location of specific fragments within a stream.
Assuming source file name was myhdsvideo, you would receive the following .4fx files:
myhdsvideoSeg1.f4x myhdsvideo_300kSeg1.f4x myhdsvideo_600kSeg1.f4x myhdsvideo_1200kSeg1.f4x
HDS Output from Encoding.com can be used on any Flash Media Server or as as extension to any web server running Apache HTTP Server version 2.2 with the Adobe HTTP Origin Module Installed. Read more from Adobe on the HTTP Origin Module.
Adobe's HDS is also supported by many popular Flash players, for example Flowplayer supports of http streaming.
For more information on Adobe's HTTP Streaming technology visit Adobe product page on the topic
Below is a complete example of a multibitrate Adobe HDS API request:
Example XML of a HDS API request:
<?xml version="1.0"?> <query> <action>AddMedia</action> <userid>XXXXX</userid> <userkey>XXXXXXXXXXXXXXXXXXXXXXXXXXX</userkey> <source>http://pc-upload.s3.amazonaws.com/7e450653180b0aa908e42054d7a1e676_17563.mov?nocopy</source> <notify>gregg@encoding.com</notify> <region>us-east-1</region> <format> <output>hds</output> <destination>ftp://hdstest:XXXXXXX@ftp.ord1-1.websitesettings.com/hds/myhdsvideo.f4m</destination> <audio_bitrate>128k</audio_bitrate> <audio_sample_rate>48000</audio_sample_rate> <audio_channels_number>2</audio_channels_number> <framerate>24</framerate> <keep_aspect_ratio>yes</keep_aspect_ratio> <video_codec>libx264</video_codec> <VCodecParameters>no</VCodecParameters> <audio_codec>libfaac</audio_codec> <two_pass>no</two_pass> <turbo>no</turbo> <twin_turbo>no</twin_turbo> <cbr>no</cbr> <deinterlacing>auto</deinterlacing> <keyframe>48</keyframe> <audio_volume>100</audio_volume> <rotate>def</rotate> <strip_chapters>no</strip_chapters> <file_extension>tar</file_extension> <hint>no</hint> <set_rotate>source</set_rotate> <bitrates>300k,600k,1200k,2400k</bitrates> <pack_files>no</pack_files> <metadata> <copy>no</copy> </metadata> </format> </query>