Jump to content

Dynamic Adaptive Streaming over HTTP: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Clients and libraries: clean promotion
not very important
Line 46: Line 46:
</ref>
</ref>
* [[Nimble Streamer]] has live and VOD MPEG-DASH support.<ref>[https://wmspanel.com/nimble/dash MPEG-DASH support in Nimble Streamer]</ref>
* [[Nimble Streamer]] has live and VOD MPEG-DASH support.<ref>[https://wmspanel.com/nimble/dash MPEG-DASH support in Nimble Streamer]</ref>

=== Content Generators ===
* ITEC's DASHEncoder.<ref name="itec-dash" /><ref name="dataset">[http://www-itec.uni-klu.ac.at/bib/files/p89-lederer.pdf S. Lederer, C. Mueller and C. Timmerer, “Dynamic Adaptive Streaming over HTTP Dataset”, In Proceedings of the ACM Multimedia Systems Conference 2012, Chapel Hill, North Carolina, February 22-24, 2012.]</ref>
* MP4Box and its multimedia framework from GPAC at Telecom ParisTech<ref name="GPAC Telecom ParisTech">[http://gpac.wp.mines-telecom.fr/2011/02/02/mp4box-fragmentation-segmentation-splitting-and-interleaving/ GPAC Telecom ParisTech]</ref>
* dashcast from Telecom ParisTech supports MPEG-DASH live streaming<ref>[http://gpac.wp.mines-telecom.fr/dashcast/ dashcast of Telecom ParisTech]</ref>

=== Other ===
* ITEC offers a validation service for MPEG-DASH Media Presentation Description (MPD) files<ref name="itec-dash" />
* Multiple DASH datasets are offered by the Institute of Information Technology (ITEC) at Alpen-Adria University Klagenfurt,<ref name="dataset" /><ref name="distributeddataset">[http://www-itec.uni-klu.ac.at/dash/?page_id=958 S. Lederer, C. Mueller, C. Timmerer, C. Concolato, J. Le Feuvre and K. Fliegel, Distributed DASH Dataset, In Proceedings of the ACM Conference on Multimedia Systems (ACM MMSys) 2013, Oslo, Norway, 2013.]</ref> the GPAC group at Telecom ParisTech<ref name="GPAC Telecom ParisTech" /> and Digital TV Labs.<ref name="DASH Digital TV Labs">[http://digitaltv-labs.com/products/consumer_electronics/details/m-peg_dash MPEG DASH Test Suite]</ref>
* BBC has DASH test streams, including DASH over HTTP/2.<ref>[http://www.bbc.co.uk/rd/blog/2013/09/mpeg-dash-test-streams MPEG DASH Test Streams]</ref>


== References ==
== References ==
Line 63: Line 53:
* [http://standards.iso.org/ittf/PubliclyAvailableStandards/c065274_ISO_IEC_23009-1_2014.zip MPEG-DASH Standard]
* [http://standards.iso.org/ittf/PubliclyAvailableStandards/c065274_ISO_IEC_23009-1_2014.zip MPEG-DASH Standard]
* [http://lists.uni-klu.ac.at/mailman/listinfo/dash DASH subscription mailing list]
* [http://lists.uni-klu.ac.at/mailman/listinfo/dash DASH subscription mailing list]
* [http://dash.itec.aau.at/ DASH research at Alpen-Adria Universität Klagenfurt]
* [http://vicky.bitmovin.net/mailman/listinfo/libdash-dev Mailing list of the open-source DASH client library libdash]
* [http://vicky.bitmovin.net/mailman/listinfo/libdash-dev Mailing list of the open-source DASH client library libdash]



Revision as of 13:49, 14 September 2015

Dynamic Adaptive Streaming over HTTP (DASH), also known as MPEG-DASH, is an adaptive bitrate streaming technique that enables high quality streaming of media content over the Internet delivered from conventional HTTP web servers. Similar to Apple's HTTP Live Streaming (HLS) solution, MPEG-DASH works by breaking the content into a sequence of small HTTP-based file segments, each segment containing a short interval of playback time of content that is potentially many hours in duration, such as a movie or the live broadcast of a sports event. The content is made available at a variety of different bit rates, i.e., alternative segments encoded at different bit rates covering aligned short intervals of play back time are made available. While the content is being played back by an MPEG-DASH client, the client automatically selects from the alternatives the next segment to download and play back based on current network conditions. The client selects the segment with the highest bit rate possible that can be downloaded in time for play back without causing stalls or re-buffering events in the playback. Thus, an MPEG-DASH client can seamlessly adapt to changing network conditions, and provide high quality play back with fewer stalls or re-buffering events.

MPEG-DASH is the first adaptive bit-rate HTTP-based streaming solution that is an international standard.[1] MPEG-DASH should not be confused with a transport protocol — the transport protocol that MPEG-DASH uses is HTTP.

MPEG-DASH uses existing HTTP web server infrastructure that is used for delivery of essentially all World Wide Web content. It allows devices like Internet-connected televisions, TV set-top boxes, desktop computers, smartphones, tablets, etc. to consume multimedia content (video, TV, radio, etc.) delivered via the Internet, coping with variable Internet receiving conditions. Standardizing an adaptive streaming solution is meant to provide confidence to the market that the solution can be adopted for universal deployment, compared to similar but more proprietary solutions like Smooth Streaming by Microsoft, or HDS by Adobe.

Standardization

MPEG-DASH technology was developed under MPEG. Work on DASH started in 2010; it became a Draft International Standard in January 2011, and an International Standard in November 2011.[1][2] The MPEG-DASH standard was published as ISO/IEC 23009-1:2012 in April, 2012.

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.[3][4] As part of their collaboration with MPEG, 3GPP Release 10 has adopted DASH (with specific codecs and operating modes) for use over wireless networks.[3]

The DASH Industry Forum (DASH-IF)[5] further promotes and catalyzes the adoption of MPEG-DASH and helps transition it from a specification into a real business. It consists of major streaming and media companies, including Microsoft, Netflix, Google, Ericsson, Samsung, Adobe, etc. and creates guidelines on the usage of DASH for different use cases in practice.

MPEG-DASH is integrated in other standards, e.g. MPEG-DASH is supported in HbbTV (as of Version 1.5).[6]

Overview

DASH is an adaptive bitrate streaming technology where a multimedia file is partitioned into one or more segments and delivered to a client using HTTP.[7] A media presentation description (MPD) describes segment information (timing, URL, media characteristics like video resolution and bit rates), and can be organized in different ways such as SegmentList, SegmentTemplate, SegmentBase and SegmentTimeline, depending on the use case.[8] Segments can contain any media data, however the specification provides specific guidance and formats for use with two types of containers: ISO base media file format (e.g. MP4 file format) or MPEG-2 Transport Stream.

DASH is audio/video codec agnostic. One or more representations (i.e., versions at different resolutions or bit rates) of multimedia files are typically available, and selection can be made based on network conditions, device capabilities and user preferences, enabling adaptive bitrate streaming[9] and QoE (Quality of Experience) fairness.[10] DASH is also agnostic to the underlying application layer protocol. Thus, DASH can be used with any protocol, e.g., DASH over CCN.[11]

On July, 27th, 2015, MPEG LA announced call for patents of MPEG-DASH in order to create single patent pool for this technology.[12]

Implementations

MPEG-DASH is available natively on Android through the ExoPlayer, on Samsung Smart TVs 2012+, LG Smart TV 2012+, Sony TV 2012+, Philips NetTV 4.1+, Panasonic Viera 2013+ and Chromecast.[13] YouTube as well as Netflix already support MPEG-DASH, and different MPEG-DASH players are available.[14]

While MPEG-DASH isn't directly supported in HTML5, there are JavaScript implementations of MPEG-DASH which allow using MPEG-DASH in web browsers using the HTML5 Media Source Extensions (MSE).[15] There are also JavaScript implementations such as the bitdash player[16] which support DRM for MPEG-DASH using the HTML5 Encrypted Media Extensions.[17]

Clients and libraries

  • VLC Media Player 3.0 will ship a new client plugin for MP4/MPEG and Live streams.[18][19][20]
  • The open-source library libdash[21] is platform independent and runs on mobile platforms such as Android, iOS, Windows Phone.
  • bitmovin provides the bitdash MPEG-DASH player for HTML5 and Flash.[22]

Servers

Note that no specific support is required from the server for DASH content, with the exception of Live Streaming.

References

  1. ^ a b "MPEG ratifies its draft standard for DASH". MPEG. 2011-12-02. Retrieved 2012-08-26.
  2. ^ ISO/IEC DIS 23009-1.2 Dynamic adaptive streaming over HTTP (DASH)
  3. ^ a b ETSI 3GPP 3GPP TS 26.247; Transparent end-to-end packet-switched streaming service (PSS); Progressive Download and Dynamic Adaptive Streaming over HTTP (3GP-DASH)
  4. ^ Open IPTV Forum Solution Specification Volume 2a – HTTP Adaptive Streaming V2.1
  5. ^ DASH Industry Forum
  6. ^ HbbTV Specification 1.5
  7. ^ Overview of Dynamic Adaptive Streaming over HTTP (DASH)
  8. ^ MPEG-DASH Overview
  9. ^ 3GPP Dynamic Adaptive Streaming over HTTP – Standards and Design Principles by T. Stockhammer
  10. ^ Towards Network-wide QoE Fairness using OpenFlow-assisted Adaptive Video Streaming
  11. ^ Y. Liu, J. Geurts, J.-P. Point, S. Lederer, B. Rainer, C. Mueller, C. Timmerer and H. Hellwagner, “Dynamic Adaptive Streaming over CCN: A Caching and Overhead Analysis”, In Proceedings of the IEEE International Conference on Communication (ICC) 2013 – Next-Generation Networking Symposium, Budapest, Hungary, June, 2013
  12. ^ http://www.mpegla.com/Lists/MPEG%20LA%20News%20List/Attachments/96/n-15-07-27.pdf MPEG LA Announces Call for Patents to Organize Joint License for MPEG-DASH
  13. ^ Device Compatibility
  14. ^ The Status of MPEG-DASH today, and why Youtube & Netflix use it in HTML5
  15. ^ HTML5 Media Source Extensions
  16. ^ bitdash DRM Testarea
  17. ^ HTML5 Encrypted Media Extensions
  18. ^ DASH at ITEC, VLC Plugin, DASHEncoder and Dataset by C. Mueller, S. Lederer, C. Timmerer
  19. ^ C. Müller and C. Timmerer, “A VLC Media Player Plugin enabling Dynamic Adaptive Streaming over HTTP”, In Proceedings of the ACM Multimedia 2011 , Scottsdale, Arizona, November 28, 2011.
  20. ^ "VLC 3.0 features".
  21. ^ libdash: Open-source DASH client library by bitmovin Gmbh
  22. ^ bitdash MPEG-DASH Player Feature Details
  23. ^ MPEG-DASH in nginx-rtmp-module 1.0.8
  24. ^ MPEG-DASH live streaming in nginx-rtmp-module
  25. ^ bitdash MPEG-DASH player for HTML5 and Flash
  26. ^ MPEG-DASH Support in Wowza Streaming Engine
  27. ^ Akamai Announces Native MPEG-DASH and HDS Support for Live Video Workflows
  28. ^ MPEG-DASH and streaming reference and resources
  29. ^ [1]
  30. ^ Netview and Unified Streaming streaming DASH
  31. ^ USP Factsheet
  32. ^ bitcodin.com Supported Formats
  33. ^ MPEG-DASH support in Nimble Streamer