Dynamic Adaptive Streaming over HTTP (DASH) Dynamic Adaptive Streaming over HTTP (DASH), also known as MPEG-DASH, is the only adaptive bit-rate HTTP-based streaming solution that is an international standard MPEG-DASH technology was developed under
MPEG. Work on DASH started in 2010 and became a Draft International Standard in January 2011 and an International Standard in November 2011. The MPEG-DASH standard was published as ISO/IEC 23009-1:2012 in April, 2012. MPEG-DASH is a technology related to
Adobe Systems HTTP Dynamic Streaming,
Apple Inc. HTTP Live Streaming (HLS) and
Microsoft Smooth Streaming. DASH is based on Adaptive HTTP streaming (AHS) in
3GPP Release 9 and on HTTP Adaptive Streaming (HAS) in
Open IPTV Forum Release 2. As part of their collaboration with MPEG, 3GPP Release 10 has adopted DASH (with specific codecs and operating modes) for use over wireless networks. as well as the open source C++-based DASH client access library
libdash of bitmovin GmbH, the multimedia framework of the GPAC group at Telecom ParisTech, and the dash.js player of the
DASH-IF.
Apple HTTP Live Streaming (HLS) HTTP Live Streaming (HLS) is an HTTP-based media streaming communications protocol implemented by
Apple Inc. as part of
QuickTime X and
iOS. HLS supports both live and
video on demand content. It works by breaking down media streams or files into short pieces (media segments), which are stored as
MPEG-TS or
fragmented MP4 files. This is typically done at multiple bitrates using a stream or file segmenter application, also known as a packager. One such segmenter implementation is provided by Apple. Additional packagers are available, including free and open source offerings like Google's Shaka Packager and various commercial tools as well - such as Unified Streaming. The segmenter is also responsible for producing a set of playlist files in the M3U8 format which describe the media chunks. Each playlist is specific to a given bitrate and contains the relative or absolute URLs to the chunks for that bitrate. The client is then responsible for requesting the appropriate playlist depending on available bandwidth. HTTP Live Streaming is a standard feature in the iPhone 3.0 and newer versions. Apple has submitted its solution to the
IETF for consideration as an Informational
Request for Comments. This was officially accepted as . A number of
proprietary and open source solutions exist for both the server implementation (segmenter) and the client player. HLS streams can be identified by the playlist URL format extension of or MIME type of application/vnd.apple.mpegurl. These adaptive streams can be made available in many different bitrates and the client device interacts with the server to obtain the best available bitrate which can reliably be delivered. Playback of HLS is supported on many platforms, including Safari and native apps on macOS / iOS, Microsoft Edge on Windows 10, ExoPlayer on Android, and the Roku platform. Many Smart TVs also have native support for HLS. Playing HLS on other platforms like Chrome / Firefox is typically achieved via a browser / JavaScript player implementation. Many open source and commercial players are available, including hls.js, video.js http-streaming, BitMovin, JWPlayer, THEOplayer, etc.
Adobe HTTP Dynamic Streaming (HDS) "HTTP Dynamic streaming is the process of efficiently delivering streaming video to users by dynamically switching among different streams of varying quality and size during playback. This provides users with the best possible viewing experience their bandwidth and local computer hardware (
CPU) can support. Another major goal of dynamic streaming is to make this process smooth and seamless to users, so that if up-scaling or down-scaling the quality of the stream is necessary, it is a smooth and nearly unnoticeable switch without disrupting the continuous playback." Flash Player and Flash Media Server supported adaptive bit-rate streaming over the traditional
RTMP protocol, as well as
HTTP, similar to the HTTP-based solutions from Apple and Microsoft, HTTP dynamic streaming being supported in Flash Player 10.1 and later. HTTP-based streaming has the advantage of not requiring any firewall ports to be opened outside of the normal ports used by web browsers. HTTP-based streaming also allows video fragments to be
cached by browsers, proxies, and
CDNs, drastically reducing the load on the source server.
Microsoft Smooth Streaming (MSS) Smooth Streaming was developed as an
IIS Media Services extension that enabled adaptive streaming of media to clients over HTTP. The media storage format was based on the
ISO base media file format and published by Microsoft as the Protected Interoperable File Format specification. Microsoft was actively involved with
3GPP,
MPEG and
DECE organizations' efforts to standardize adaptive bit-rate HTTP streaming, which ultimately resulted in the publication of the
DASH standard. Microsoft provided Smooth Streaming Client software development kits for
Silverlight and
Windows Phone 7, as well as a Smooth Streaming Porting Kit that could be used for other client operating systems, such as Apple iOS, Android, and Linux. IIS Media Services 4.0, released in November 2010, introduced a feature which enabled Live Smooth Streaming H.264/AAC videos to be dynamically repackaged into the Apple HTTP Adaptive Streaming format and delivered to iOS devices without the need for re-encoding. Between 2009 and 2013, Microsoft successfully demonstrated delivery of both live and on-demand 1080p HD video with Smooth Streaming to Silverlight clients. In 2010, Microsoft also partnered with NVIDIA to demonstrate live streaming of 1080p stereoscopic 3D video to PCs equipped with
NVIDIA 3D Vision technology. In 2013 Microsoft shifted its media services product offering to the cloud where it continued to support Smooth Streaming as a core component of Azure Media Services. However, development and adoption of MPEG DASH and HLS as industry standards gradually displaced Smooth Streaming as Microsoft's preferred adaptive streaming technology by the end of that decade. In June 2023 Microsoft announced the retirement of Azure Media Services, effective June 2024, and while the announcement didn't explicitly mention Smooth Streaming by name it effectively meant the end of support for Smooth Streaming in any active Microsoft products. ==Related technologies==