edge 2014: mpeg dash – tomorrow's format today

39

Upload: akamai-technologies

Post on 04-Dec-2014

996 views

Category:

Technology


1 download

DESCRIPTION

MPEG DASH – Tomorrow's Format Today by Nicolas Weil Senior Solutions Architect, Akamai Technologies & Will Law, Chief Architect, Media Cloud Engineering, Akamai Technologies As an open standard designed to help simplify video delivery across connected devices, MPEG-DASH is continuing to gain momentum in the OTT, broadcast and wireless industries. Join Akamai's DASH experts for a discussion on what differentiates the emerging standard from legacy formats along with a demonstration showing the ease of deploying DASH playback across devices. The panel will also highlight current deployments, offer a review of the industry and provide a three-year outlook. Akamai Edge is the premier event for Internet innovators, tech professionals and online business pioneers who together are forging a Faster Forward World. At Edge, the architects, experts and implementers of the most innovative global online businesses gather face-to-face for an invaluable three days of sharing, learning and together pushing the limits of the Faster Forward World. Learn more at: http://www.akamai.com/edge

TRANSCRIPT

Page 1: Edge 2014: MPEG DASH – Tomorrow's Format Today
Page 2: Edge 2014: MPEG DASH – Tomorrow's Format Today

MPEG DASH – Tomorrow's Format Today Will Law, Chief Architect, Media Division & Nicolas Weil, Senior Solutions Architect

Page 3: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

Streaming is a feudal landscape

SMOOTH HDS HLS

Page 4: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

Streaming is a feudal landscape

MPEG-DASH

Page 5: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

Page 6: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

6

DASH intends to be to the Internet world …

what MPEG2-TS and NTSC have been to the broadcast world.

Page 7: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

What is DASH?

MPEG-DASH is an ISO standard for the adaptive delivery of segmented content.

Dynamic Adaptive Streaming over HTTP

HLS

HDS

Smooth DASH

Page 8: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

ISO 23009: Timeline and Standards in MPEG

ISO/IEC 23009 Parts •  Part 1: Media Presentation Description and Segment Formats

•  2nd edition has already been released

•  Part 2: Conformance and Reference Software (Finished 2nd study of DIS) •  Part 3: Implementation Guidelines (Finished study of PDTR) •  Part 4: Format Independent Segment Encryption and Authentication (FDIS) Other Relevant Specifications •  14496-12: ISO Base Media File Format •  14496-15: Advanced Video Coding (AVC) File Format •  23001-7: Common Encryption in ISO-BMFF •  23001-8: Coding-Independent Code Points

8

CfT Issued April 2010 18 Responses and Working Draft (WD)

July 2010

Committee Draft (CD) Oct. 2010

Draft International Standard (DIS)

Jan. 2011

Final Draft International Standard

August 2011

Published as International Standard

April 2012

Fastest time ever that a standard was developed in MPEG to address the demand of the market

Page 9: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

Segment Info

Initialization Segment http://www.e.com/ahs-5.3gp

Media Presentation Description (MPD) Data Model

MPD describes accessible Segments and corresponding timing

Media Presentation Period, start=0s

Period, start=100s

Period, start=295s

Period, • start=100 • baseURL=http://www.e.com/

Adaptation Set 1 video

Adaptation Set 2 audio

Media Segment 1 start=0s http://www.e.com/ahs-5-1.3gs

Media Segment 2 start=10s http://www.e.com/ahs-5-2.3gs

Media Segment 3 start=20s http://www.e.com/ahs-5-3.3gh

Media Segment 20 start=190s http://www.e.com/ahs-5-20.3gs

Representation 1 • bandwidth=500kbit/s • width 640, height 480

Segment Info duration=10s

Template: ./ahs-5-$Index$.3gs

Representation 2 • bandwidth=250kbit/s • width 640, height 480

Splicing of arbitrary content Selection of Components

Select/Switch of Bandwidth

<MPD type="static" xmlns="urn:mpeg:DASH:schema:MPD:2011" profiles="urn:mpeg:dash:profile:full:2011" minBufferTime="PT1.5S" mediaPresentationDuration="PT0H1M59.91S”> <ProgramInformation moreInformationURL=http://gpac.sourceforge.net> <Title>Media Presentation Description for file hdworld_0696kbps.f4v.video_temp.mp4 generated with GPAC </Title> </ProgramInformation> <Period start="PT0S" duration="PT0H1M59.91S”> <AdaptationSet> <ContentComponent id="1" contentType="video"/> <SegmentTemplate initialization="HDWorld_init.mp4"/> <Representation id="1" mimeType="video/mp4" codecs="avc1.64001f" width="1280" height="720" startWithSAP="1" bandwidth="534520”> <SegmentTemplate timescale="1000" duration="9750" media="hdworld_seg_hdworld_0696kbps_ffmpeg.mp4.video_temp$Number$.m4s" startNumber="1"/> </Representation> <Representation id="2" mimeType="video/mp4" codecs="avc1.64001f" width="1280" height="720" startWithSAP="1" bandwidth="812797”> <SegmentTemplate timescale="1000" duration="9750" media="hdworld_seg_hdworld_0996kbps_ffmpeg.mp4.video_temp$Number$.m4s" startNumber="1"/> </Representation> <Representation id="3" mimeType="video/mp4" codecs="avc1.64001f" width="1280" height="720" startWithSAP="1" bandwidth="1607936”> <SegmentTemplate timescale="1000" duration="9750" media="hdworld_seg_hdworld_1896kbps_ffmpeg.mp4.video_temp$Number$.m4s" startNumber="1"/> </Representation> </AdaptationSet> <AdaptationSet> <ContentComponent id="1" contentType="audio" lang="und"/> <SegmentTemplate initialization="HDWorld_audio_init.mp4"/> <Representation id="1" mimeType="audio/mp4" codecs="mp4a.40.02" sampleRate="44100" numChannels="2" lang="und" startWithSAP="1" bandwidth="257141”> <SegmentTemplate timescale="1000" duration="9980" media="hdworld_seg_audio$Number$.m4s" startNumber="1"/> </Representation> </AdaptationSet> </Period> </MPD>

Page 10: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

Highlighted Features

Live, on-demand and time-shift services. Efficient and ease of use of existing CDNs, proxies, caches, NATs and

firewalls. Independency of request size and segment size (byte range requests). Segment formats.

•  ISO base media FF and TS. • Codec independent: guidelines for integrating any other format.

Control of entire streaming session by the client. Support of seamless switching of tracks. The concept of switching and selectable streams.

Page 11: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

Highlighted Features contd.

Support for efficient trick mode. Simple splicing and (targeted) ad insertion. Content Descriptors for Protection, Accessibility, Rating, etc. Common Encryption - signaling, delivery & utilization of multiple concurrent

DRM schemes from the same file. Multiple base URLs for the same content. Support for Scalable Video Coding (SVC), Multiview Video Coding (MVC) and

any interdependent coding. Definition of quality metrics for logging processes. Profile: restriction of DASH and system features.

Page 12: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

Full Profile

MPEG-2 TS Main

Profiles

Set of restrictions on the Media Presentation (MPD & Segments). 6 Profiles defined in ISO/IEC 23009:

ISO Base Media File Format Main

ISO Base Media File Format On Demand

MPEG-2 TS simple ISO Base Media File

Format Live

Page 13: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

Different segment addressing schemes

Segment List <AdaptationSet segmentAlignment="true" maxWidth="1920" maxHeight="1080" maxFrameRate="25" par="16:9"> <ContentComponent id="1" contentType="video"/> <Representation id="h264bl_low" mimeType="video/mp4" codecs="avc1.42c00d" width="320" height="180" frameRate="25" sar="1:1" startWithSAP="1" bandwidth="50877"> <SegmentList timescale="1000" duration="10000"> <Initialization sourceURL="mp4-main-multi-h264bl_low-.mp4"/> <SegmentURL media="mp4-main-multi-h264bl_low-1.m4s"/> <SegmentURL media="mp4-main-multi-h264bl_low-2.m4s"/> <SegmentURL media="mp4-main-multi-h264bl_low-3.m4s"/> <SegmentURL media="mp4-main-multi-h264bl_low-4.m4s"/> <SegmentURL media="mp4-main-multi-h264bl_low-5.m4s"/> <SegmentURL media="mp4-main-multi-h264bl_low-6.m4s"/> <SegmentURL media="mp4-main-multi-h264bl_low-7.m4s"/> <SegmentURL media="mp4-main-multi-h264bl_low-8.m4s"/> …..

Page 14: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

Different segment addressing schemes

Segment Template

<AdaptationSet codecs="avc1.4d401f" mimeType="video/mp4" segmentAlignment="true" startWithSAP="1"> <Representation id="v_segm1" bandwidth="1500000" width="960" height="540"> <SegmentTemplate timescale="100000" duration="600600" initialization="v_segm1-init.mp4" media="v_segm1-$Number$.m4s" startNumber="28778"> </SegmentTemplate> </Representation> <Representation id="v_segm2" bandwidth="1200000" width="640" height="360"> <SegmentTemplate timescale="100000" duration="600600" initialization="v_segm2-init.mp4" media="v_segm2-$Number$.m4s" startNumber="28778"> </SegmentTemplate> </Representation> ….

Page 15: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

Different segment addressing schemes

SegmentBase <AdaptationSet> <ContentComponent contentType="video" id="1" /> <Representation bandwidth="4190760" codecs="avc1.640028" height="1080" id="1" mimeType="video/mp4" width="1920"> <BaseURL>oops-20120802-89.mp4</BaseURL> <SegmentBase indexRange="674-1293"> <Initialization range="0-673" /> </SegmentBase> </Representation> <Representation bandwidth="2073921" codecs="avc1.4d401f" height="720" id="2" mimeType="video/mp4" width="1280"> <BaseURL>oops-20120802-88.mp4</BaseURL> <SegmentBase indexRange="672-1291"> <Initialization range="0-671" /> </SegmentBase> </Representation> ….

Page 16: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

Different segment addressing schemes

Segment Timeline

<AdaptationSet group=”1” mimeType="audio/mp4” minBandwidth="148000” maxBandwidth="148000" segmentAlignment="true"> <SegmentTemplate timescale="48000” initialization="dash/ateam-audio=$Bandwidth$.dash" media="dash/ateam-audio=$Bandwidth$-$Time$.dash"> <SegmentTimeline> <S t="0” d="200704" /> <S d="119808" /> <S d="102400" r=“3”/> <S d="104448" /> <S d="141312" /> <S d="114688" /> <S d="111616" /> </SegmentTimeline> </SegmentTemplate> <Representation id="audio=148000” bandwidth="148000” codecs="mp4a.40.2" audioSamplingRate="48000"> <AudioChannelConfiguration schemeIdUri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2"> </AudioChannelConfiguration> </Representation> </AdaptationSet>

Page 17: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

HTT

P

Number-based addressing

Time-based addressing

Playlist-based addressing

Byte-based addressing

URLs

URLs

URLs

URLs

MPD

Segment Index

Adaptive stream

ing heuristics

Media download (muxed)

Media Segment download (unmuxed)

Audio ES

Video ES Initialization

Segment download

Segment Index

download ISO

Bas

e M

edia

File

For

mat

Par

ser

Open G

oP sw

itching

Closed G

oP sw

itching

Interop and Overview DASH-AVC/264

Com

mon

Enc

rypt

ion

2300

1-7

Subtitles

Mul

tiple

DR

M S

MP

TE

TT H

E-A

AC

v2 H

.264/AVC

P

r HP

@3.1

Page 18: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

DASH-IF Published Outputs 18

DASH-AVC/264 V1.0

DASH-AVC/264 V2.0

DASH IOP V3.0

Test Suite V1.0

dash.js V1.2

Community Review @ dashif.org

Ad Insertion V1.0

Conf. Software V1.0

Live Service V1.0

•  Codecs •  SD video •  Subtitles and closed captioning •  DRM baseline signaling •  Transport-protocol •  Metadata

•  HD Video •  MC audio

•  HEVC •  4K/UHD

•  Events •  CEA608/708

•  Server-side Client-side

Page 19: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

DASH MSE Reference client

Delivered as an open source player, hosted on Github https://github.com/Dash-Industry-Forum/dash.js Leverages the Media Source Extensions and Encrypted Media Extensions of the W3C. Enabled in Chrome v23+ and IE11+ Free to use and extend. Released under the BSD-3 license. Supports the test vectors of DASH-AVC/264, along with adaptive, late-binding, multi-bitrate playback. Apple’s has announced “Premium HTML5 Video” == MSE + EME in Safari Example player here: http://dashif.org/reference/players/javascript/index.html

Let’s look at a quick demo

Page 20: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

Key Market Benefits of MPEG DASH

independent ISO standard - not owned by any one company multi-language/multi-format late-binding audio common encryption templated manifests efficient delivery from non-segmented origin files efficient ad insertion industry convergence for streaming delivery vibrant ecosystem of encoders and player builders

Page 21: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

DASH Deployment State

IS MPEG DASH STILL A

LAB THING?

Page 22: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

•  Early implementer (late 2010)

•  ISO BMFF compliant media fragments

•  Custom manifests

•  Common Encryption + PlayReady/Widevine DRMs

•  DASH plays on all devices except iOS 6

Netflix debug info on Chrome browser with Silverlight player

Network trace of an iOS 7 iPhone

Page 23: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

•  MPEG DASH delivery started in December 2012

•  More than 98% of the content is now available in DASH format

•  Using a mix of ISO BMFF H.264 & WEBM VP8/VP9 DASH profiles to serve all devices

•  Custom manifests

•  Common Encryption + PlayReady/Widevine DRMs

•  DASH plays on TVS, game consoles, STBs, Chromecast, desktop browsers, mobile web, mobile apps

DASH benefits for YouTube, by Richard Leider (Engineering Manager, YouTube Player Infrastructure)

IBC 2014 DASH SuperSession 09/13/14

Page 24: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

DASH Deployment State

WITH THOSE DEPLOYMENTS ONLY, MPEG DASH CONTRIBUTES ~50%

OF THE DAILY WEB TRAFFIC.

IS THERE MORE?

Page 25: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

•  MPEG DASH delivery started in 2013

•  DASH-AVC/264 compliance •  Common Encryption + PlayReady/Widevine DRMs

•  Smooth & DASH compatible media files

•  DASH played by Chromecast, Chrome, IE11, Amazon FireTV and Android 4.2+

•  15% better QoS >> less rebuffering

DASH / Smooth Interoperable DRM Signaling, by Baptiste Coudurier

(Principal Software Development Lead) OVFSquad Conference, 09/18/14

Page 26: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

•  MPEG DASH delivery started in November 2013

•  DASH-AVC/264 compliance (isoff-on-demand profile) + additional constraints on encoding parameters such as video resolutions

•  Common Encryption + Marlin DRM

•  DASH plays on recent BRAVIA TVs and Playstation consoles – with client support gradually expanding

Sony Video Unlimited service

Page 27: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

•  Deployments done by Intertrust in 2014

•  MyTF1 VOD: HbbTV 1.5, iOS, Android

•  Mediaset Infinity: ADB Set Top Boxes, Connected TVs with Tivùon! middleware

•  Common Encryption + PlayReady/Marlin DRMs

•  On iOS: local proxy transforms DASH into HLS, Quicktime player controls heuristic

ADB Set Top Box i-CAN 3820T Terrestrial HD

MyTF1 VOD Service on Android

Page 28: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

DASH Deployment State

MPEG DASH IS EXPANDING

OUTSIDE OF THE INITIAL OTT SPHERE

Page 29: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

•  First DASH integration in HbbTV 1.5 spec / ongoing deployments

•  DVB DASH Profile approved on July 3rd

•  HbbTV 2.0 (Q1 2015) integrates this new DVB DASH Profile

•  DASH is mandatory in eMBMS spec

•  1 Channel ID = 2 Manifests pointing to the same video fragments: high bitrate for Multicast, multibitrate for Unicast

•  First large scale LTE Broadcast deployment by Korea Telecom

•  Many field trials to be transformed in deployments in 2015

•  DASH is integrated in CVP-2 Guidelines

•  DASH is considered for the v.3 Guidelines

•  Ongoing work on Common Streaming Format close to DASH-IF Guidelines

Page 30: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

DASH Deployment State

THE MPEG DASH ECOSYSTEM IS

VIBRANT

Page 31: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

•  Android 4.4 supports DASH and CENC

•  Chromecast native DASH support

•  Widevine is now DASH compatible

•  eDASH Packager

•  ExoPlayer (Java) •  Safari 8+ MSE support (OSX Yosemite)

•  Upcoming iOS DASH support ?

•  Whole range of player SDKs now supporting DASH

•  Azure Media Services dynamically packaging live & on-demand DASH streams

•  PlayReady CENC compatible

•  Primetime cross-platform DASH support expanding

•  Access CDM integrated in Firefox

Page 32: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

•  ExoPlayer •  eDASH Packager

•  GPAC Player •  MP4Box •  DASHcast

•  libdash •  Reference Test Engine for Encoding

•  dash.as •  DASH.encrypt

segmenter

•  dash.js •  mp4-dash packager •  Hippo Media Server

GPAC

BENTO4 ITEC

•  DASHEncoder

Page 33: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

•  Missions : promotion of MPEG DASH and interoperability work

•  78 members (Google joined in August)

•  Collaboration hub with many standards bodies

•  DASH-AVC/264 & DASH-HEVC/265 Interoperability Points

•  No company copyright on contributions

CHARTER MEMBERS

CONTRIBUTOR MEMBERS

ASSOCIATE MEMBERS

More information on http://dashif.org

Page 34: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

DASH Deployment State

MPEG DASH @ AKAMAI

Page 35: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

Media Services Live – Available today

Certified Encoders

Ingest Points

Stream Packaging

Ingest Formats HDS, HLS, Smooth & DASH Output Formats

DASH, Smooth, HDS and HLS

HLS or HDS

Ingest Formats RTMP

DVR Cloud Archive Unlimited duration

Adaptive Media Player (AMP)

Page 36: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

Media Services On Demand – Q1 2015

Transcoding

Media Services On Demand

Packaging

Globally Distributed Content Delivery

Single Source. Multiple Devices.

Parallel Processing for faster turn

abound. Automated Watch

Folder.

Mezzanine files for transcoding

Prepared mp4 Including existing files on NetStorage

DASH in 3 profiles: HbbTV DASH-AVC/264 ondemand DASH-AVC/264 live

HLS Smooth HDS

Page 37: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

DASH Deployment State

WHERE WILL WE BE WITH MPEG DASH

IN 3 YEARS FROM NOW?

Page 38: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

DASH Insights for 2015-2017

•  UHD profiles •  Low latency live specific guidelines •  HTTP2.0 transport •  New Multichannel Audio extensions

(AC4) •  Official DASH WebM Profile •  Spatial Relationships Description for

zoomed or tiled videos representations •  QoE standardisation: ITU-T P.NATS •  Server And Network assisted DASH

operation •  WebRTC transport

•  Generalized MSE/EME support •  Improved Live support •  Good Ad Insertion support •  DRM backend interoperability •  Browsers CDM interoperability

OTT VIDEO TRAFFIC DASH: 70 to 100% HLS: 0 to 30%

ECOSYSTEM EVOLUTIONS

DASH EXTENSIONS

Page 39: Edge 2014: MPEG DASH – Tomorrow's Format Today

©2014 AKAMAI | FASTER FORWARDTM

Thank you for your time

Questions?

(All slides will be available through Akamai Community)