Adaptive Bitrate Encoding
Adaptive Bit Rate encoding presets (under the Adaptive Bit Rate folder under the Web tab in the Presets window) are available in Squeeze 8, such as "Adobe HTTP," "Apple HLS," and "Microsoft Smooth Streaming." As of Squeeze 8.5 MPEG-DASH has also been added.
Adaptive Bit Rate streaming is a negotiation between player and server for optimal bit rate and error resilience based on network conditions, resulting in a dynamic adjustment of the video bit stream being delivered. Adaptive Bit Rate encoding enables you to:
1. Encode video files at the recommended dimensions and video and audio data rates for the open source x264 codec and MainConcept's H.264 codec.
2. Create an output folder of all the various selected encoded streams.
3. Customize the Keyframe interval and Fragment Duration (chunk size).
4. Alter frame size, audio settings, filters
5. Edit the and all other settings
To create an Adaptive Bit Rate encode in Squeeze 8, go to the Web tab and expand the Adaptive Bit Rate folder. You should see the following 3 formats:
Note: Squeeze 8 Lite does not have Adaptive presets. In Squeeze 7 the only option is Apple Adaptive.
There are 36 different Adaptive presets to choose from. The top three categories are the different formats: Apple HLS, Adobe HTTP and Microsoft Smooth Streaming.
Inside each folder you will have the option for either long form or short form. Long form is anything over 5 minutes. The difference between the two is in the fragment durations, which are explained below.
In each long or short form folder you will have the option to choose either the h264 or x264 codecs. The differences in those are further detailed in the Presets section. In each of the h264 and x264 folders there are three presets: 480p 4x3, 720p 16x9, and 720p MAR (maintain aspect ratio).
When you open the settings you will see this window:
Unique to the Adaptive preset settings are the following settings:
This determines the frequency of keyframes. You will get optimal results by having at least one keyframe per fragment. The default setting is one keyframe every 2 seconds.
This is how long each file will be. Short form presets have this set to 2 seconds with the idea that with shorter files it would be ideal to switch streams more often. Long form presets have this set to 6 seconds, with the idea that longer files would be better served focusing its resources on decoding the files and not switching streams. This may come down to personal preference.
By default you will have 6 streams in any given preset, each with a different frame size, data rate, frame rate. You can add or subtract from the number of streams in the list, or edit each one according to your individual needs.
Note: You must be using a video streaming solution (server) such as Amazon AWS that supports adaptive video streaming, and you can only upload the folder and its contents. To stream this via HTTP, simply copy the directory structure to the HTTP server. The player (i.e., Flash, Silverlight, HTML5 player, etc.) negotiates with the server for the correct video stream based on available bandwidth.
During the encoding process, you will notice that progress is reflected for multiple video streams (based on your server's bandwidth). You can also use this feature to generate QuickTime iPod and iPad outputs.