HLS (HTTP Live Streaming) is the leading standard for streaming audio and video over HTTP, dominating the adaptive bitrate streaming market with about 75% market share. It provides support for both live and on-demand content. While a streaming server is needed for live content, HLS can deliver pre-recorded content directly from a common HTTP server or CDN without the need for additional servers. HLS works by creating multiple small segmented files at different bitrates, allowing players to seamlessly switch streams based on changing network conditions to optimize playback quality. Highwinds' EveryStream platform can take any video files and automatically transcode them into HLS format with multiple bitrates and profiles to enable fast and easy HLS streaming
2. Apple’s HTTP Live Streaming (HLS) is one of the most mature standards available today,
dominating the adaptive bitrate streaming market and providing affordability if you want to try
and cover all the multitude of device types available today.
HLS has become the leading method for streaming audio and video over HTTP from an ordinary
HTTP based web server and provides support for both live broadcasts as well as prerecorded
Video On Demand (VOD) content.
For 2015 adaptive bitrate streaming standards, HLS is the clear leader with about 75% of the
market share, with other standards such as Microsoft Smooth Streaming, Dash and HDS taking
the other 25%.
For actual “live” content such as an event or concert, a streaming server (such as Wowza) is
often needed to ingest the live feed and output the HLS stream, however for any pre-recorded
VOD content, no streaming server is needed.
You just need the content in the proper HLS streaming format and use a common HTTP server
or CDN such as Highwinds to deliver the stream. With HLS, smaller chunks are sent to the end
user in a streamed format rather than sending a larger video file through progressive download
with pseudostreaming. Both formats have their use cases, but HLS is rapidly becoming the
standard of choice for supporting the huge multitude of device types and network connection
speeds.
Utilizing HLS for Delivering Streaming Video
3. With HLS, there is also the optional feature of providing the same video in different bitrates,
allowing your customers to dynamically switch mid-stream to the proper bitrate for their
current network connection speeds, all happening seamlessly and often without any code
development on your side.
While HLS was initially developed for playback on iOS-based devices including iPhone, iPad,
iPod touch, Apple TV and Mac OS X, its use has expanded to other mobile, tablet, desktop,
IPTV and Over the Top (OTT) devices, including Android releases 4.0 - 5.0, Blackberry 10, OTT
devices (such as Roku, Dlink, Chromecast and more), desktop video players (such as JW player
and Flowplayer) -- and the list continues to grow. Streaming Video
HLS is one of the most mature standards available today, dominating the adaptive bitrate
streaming market and providing affordability if you want to try and cover all the multitude of
device types available today.
How HLS and Optional Adaptive Bitrate Works
HLS works by creating multiple segmented smaller files for
distribution to the device or player, which can optionally
adaptively change streams to optimize the playback
experience for the end user. It all works over HTTP or HTTPS,
so no streaming server is required as all the streaming and
switching logic resides on the player. In addition, with
everything running over HTTP, multiple protocol support
(RTMP, RTSP) is not needed thus increasing device support.
To deliver HLS to your clients, the original mezzanine video source is transcoded into multiple
segmented files at different data rates (optional). We find segments in the range of 10 second
chunks work best with 2-3 bitrate/resolution combinations offered for low (200-500kbps),
medium(500-1000kbps) and high(1000-5000kbps). Some may even choose to offer a 4K
option with extremely high bitrates of 12,000 kbps or more.
Utilizing HLS for Delivering Streaming Video
4. Utilizing HLS for Delivering Streaming Video
An HLS manifest or playlist file (.m3u8) directs the player to the list of available encoded
bitrates and directly to the video segments (.ts files) for your encoded streams. The device
player monitors changing bandwidth conditions of the end user, and if this indicates a stream
change is needed, the player checks the original manifest file for the location of additional
bitrates and requests the stream-specific manifest file for the next video chunk.
In most cases, this switching mid-stream is seamless to the end user and prevents them
from buffering or stalling altogether. This adaptive bitrate streaming experience is superior
to delivering one large video file at a single bitrate, because the video stream can be switched
midstream, providing the best quality stream for the given end user’s current available network
speed. Without this adaptive streaming, a higher bitrate single video file may be chosen that
then causes buffering or complete interruption in playback if the end user’s network conditions
change and can’t support the higher quality large video file.
5. Utilizing HLS for Delivering Streaming Video
HLS File Preparation and Delivery
So you’ve decided to add HLS to your video delivery, but how do you get there quickly? Your
current videos may be in formats such as .mp4, .mov, .flv and only in one bitrate. You want to
ensure your customers on slow internet connections up to fast broadband connections can get
the quality of service they want and have come to expect. To get this all working and prepare
your content for delivery, do you need to spin up a streaming server?
How do you determine all the codecs, screen resolutions, frame rates, bitrates and formats?
Once you start down this path you’ll probably uncover things you don’t even know yet....ugh.
You just want to get your video content out there now in HLS format.
That’s where Highwinds can help with the preparation and fast delivery of your prerecorded
video content. With our recently released EveryStream platform, we can take any video file
you have and transcode or transmux this into the HLS format including the various bitrates
and adaptive streaming manifests. You can use our default profiles for HLS adaptive bitrates,
resolutions, frame rates, etc., making the process extremely fast and easy to implement.
Simply upload your videos to EveryStream through the graphical user interface, FTP or APIs,
and the transcoding to the defined profiles can automatically take place. In a few minutes the
URLs are available for your adaptive bitrate HLS streams, which are then immediately available
for delivery through the Highwinds network with over 56 PoPs worldwide.
The EveryStream profiles are customizable, so if the default profiles are not ideal for you, you
can add or remove file formats and bitrates as needed. And by the way, HLS is just one option
with EveryStream, other encoding formats (such as.mp4, .ogg and .webm) are included to
expand your video offering.
6. Utilizing HLS for Delivering Streaming Video
Unlike traditional OVPs, EveryStream allows you to choose the specific services you need,
including additional features of static and dynamic playlists, metadata tagging, included video
player and much more! Contact Highwinds today for a demo or trial of EveryStream to move
forward quickly with HLS streaming.