Transcript PPT

CS 414 – Multimedia Systems Design
Lecture 27 –
DASH (Dynamic Adaptive
Streaming over HTTP)
Klara Nahrstedt
Spring 2012
CS 414 - Spring 2012
Administrative


MP2 posted
MP2 Deadline – April 7, Saturday, 5pm.
CS 414 - Spring 2012
Internet Multimedia Protocol Stack
APPLICATION
DASH
Media encaps
(H.264, MPEG-4)
Synchronization Service
SIP
RTSP
RSVP
RTP
HTTP
KERNEL
TCP
DCCP
UDP
IP Version 4, IP Version 6
AAL3/4
Layer 5
(Session)
RTCP
AAL5
MPLS
CS 414 - Spring 2012
Layer 3
(Network)
Layer 2
(Link/MAC)
Ethernet/WiFi
ATM/Fiber Optics
Layer 4
(Transport)
Problems with Internet Video

Video not accessible

 Video
Behind firewall
 Plugins not available
 Bandwidth not
sufficient
 Wrong and non-trust
device
 Wrong format
Low Quality of
Experience
 Long
start-up latency
 Frequent rebuffering
 Low playback quality
 No lip-sync

…
CS 414 - Spring 2012
Mobile Video Streaming
Challenges
Mobile Internet use is expanding
dramatically
 Video traffic is growing exponentially
 Challenges:

 Mobile
users expect high quality video
experience
 Network operators need to offer quality
experience affordably
CS 414 - Spring 2012
Growth of Mobile Internet/Video
Thomas Stockhammer, Qualcomm, “DASH – Design Principles and Standards , MMSys 2011
Adaptive Streaming
One approach to tackle
problems/challenges
CS 414 - Spring 2012
Adaptive Streaming Concept

Adaptive Streaming technologies enable
 Optimal
streaming video viewing experience for diverse
range of devices over broad set of connection speeds

Adaptive streaming technologies share
 Production
of multiple files from the same source file to
distribute to viewers watching on different powered devices
via different connection speeds
 Distribution of files adaptively, changing stream that is
delivered to adapt to changes in effective throughput and
available CPU cycles on playback stations
 Transparent operation to the user so that the viewer clicks
one button and all streams switch/adapt behind the scenes.
Adaptive Streaming
One Approach of Adaptive Streaming
1. Server sends first the high important video information (e.g., I frames)
And after the high importance video information is sent, lower importance
video information follows (e.g., P and B frames) if bandwidth and time allows
Second Approach of Adaptive Streaming
1. Server sends with high quality part of the frame and only progressively ,if
bandwidth and time allow, it sends the rest of the frame information
Third Approach of Adaptive Streaming
1. At server video is encoded in multiple bitrates and depending on the device
Bandwidth it adjusts at what rate
Other approaches exist
Source: http://www.dicomdistribution.com/Adaptive%20Streaming.html
Standardization History
Thomas Stockhammer, Qualcomm, “DASH – Design Principles and Standards ,
Presentation at MMSys 2011
Adaptive HTTP Streaming System (Protocol)


Server
 Can
be standard web
server
 Media segment can be
prepared in-line or offline
Client

Sends series of HTTP GET
segment requests and
receives segments
 Performs rate adaptation
before sending a new GET
segment request
CS 414 - Spring 2012
Client-centric approach
Client has best view of network conditions
 No session state in network

 Redundancy
 Scalability
Faster innovation and experimentation
 But, relies on client for operational metrics

 Only
client knows what really happens
CS 414 - Spring 2012
Terms and Definitions of
Adaptive HTTP Streaming

Need
 Media
Presentation Description (MDP)
which provides metadata
For requesting (GET request) media segments
 For rate adaptation purpose

 Segment
which may include media data or
metadata to decode

Need DASH
CS 414 - Spring 2012
DASH – Dynamic Adaptive Streaming
over HTTP

Dash is NOT
 System,

protocol, presentation, codec, interactivity
What is DASH






Enabler which provides formats to enable efficient and highquality delivery of streaming services over the Internet
Component of end-to-end service
Enabler to reuse existing technologies (containers, DRM
(Digital Rights Management), codecs)
Enabler for deployment on top of HTTP-CDNs
Enabler for very high user experience (low start-up, no rebuffering)
Provides simple inter-operability points (profiles)
DASH Client
Thomas Stockhammer, Qualcomm, “DASH – Design Principles and Standards ,
Presentation at MMSys 2011
Information Classification


DASH uses MPD (Media Presentation Descriptor) and
Index Information as metadata for DASH Access Client
Initialization and Media Segments for Media Engine
 Reuse
of existing container format
Source: MMSys’11
CS 414 - Spring 2012
Media Presentation Data Model
MDP - description of accessible segments and corresponding timing
Source: Stockhammer, Qualcomm, “DASH – Design Principles
and Standards , Presentation at MMSys 2011
MDP Information
Includes redundant information of media
streams to initially select or reject groups or
representations
 Includes access and timing information

 Content
addressing via HTTP-URLs
 Byte range for each accessible segment
 Segment availability start and end time in wall-clock time
 Approximate media start time and duration
 Instructions on starting playout (for live service)

Includes switching relations across
representations
CS 414 - Spring 2012
Media Segments (1)
Contain information to map segment into
media presentation timeline for switching
and synchronous presentation with other
representations
 Can be short (~ 1-10seconds)
 Can be long (~10sec – 2 hours)

CS 414 - Spring 2012
Media Segments (2)
Media segment
duration
advantages
disadvantages
Short duration
Commonality with live
high switching
granularity on segment
level
- Large number of files
- Large number of
URLs
- Fixed request size
- Switching granularity
on segment level
Long duration
- Small number of files
- Small number of URLs
- High switching
granularity
- Flexible request sizes
- Improved cache
performance
- Need for segment
index
- Difference from live
CS 414 - Spring 2012
Segment Indexing

Provides information in ISO box structure on
 Accessible
units of data (e.g., frames) in media segment
 Byte range in segments (easy access through HTTP
GET)
 Accurate presentation duration (seamless switching)
 Presence of representation access positions

Provides compact bitrate-over-time to client
 Can


be used for intelligent request schedule
Generic data structure
Hierarchical structuring for efficient access
CS 414 - Spring 2012
Media Segment with Segment
Index
Source: Stockhammer, Qualcomm, “DASH – Design Principles and Standards ,
Presentation at MMSys 2011
DASH Capabilities



Enables live, on-demand and time-shift services
Allows independency of request sizes and segment sizes
Allows segment formats that are

ISO base media formats – ISO BMFF or MPEG-2 TS








ISO BMFF - .. File Format (extensions)
MPEG-2 TS - .. Transport Stream (extensions)
Guidelines for integrating any other format
Codec independent
Supports server/client component synchronization (e.g., separate
and multiplexed AV)
Enables targeted ad insertion
Provides definition of quality metrics
Enables content descriptors for protection, accessibility, rating, …
CS 414 - Spring 2012
Composition of Media
Presentation (CMP)
Consider layer on top of MDP which
specifies initial user and device options
 Reasons:
 Size
of MPD expands very quickly (different camera
views/angles, subtitles, audio languages, …)
 Device pre-configuration (codec, resolution…)
 User pre-configuration due to her preferences
(camera angle, subtitle, …)
 Flexibility and compatibility with existing repository
formats
CS 414 - Spring 2012
CMP Protocol Sequence
(1) At Client Request CMP from
Server
(1) Once CMP received, check and
Configure CMP at client if needed
(3) Request for MDP that fulfills
Requirements
(4) Start standard DASH complaint
steps
Source: Muller et al, MMSys’11
CS 414 - Spring 2012
DASH featuring Session
Mobility (Problem Description)
Problem: User runs DASH streaming session on laptop and decides to switch to
Another mobile device
Source: Muller et al, MMSys’11
CS 414 - Spring 2012
Session Mobility Protocol
(1) Initiate session transfer
(2) Digital Item Adaptation (DIA)
Starts and preserves current
state of Digital Item (segment)
(3) Transfer Context digital item
To selected device
(4) Download CMP
(5) Reconfigure device
(6) Continue with
DASH-compatible protocol
Source: Muller et al. MMSys 2011 CS 414 - Spring 2012
Adaptive streaming in practice
Source: Watson, MMSys’11
CS 414 - Spring 2012
Adaptive streaming in practice
CS 414 - Spring 2012
MPEG DASH Summary







Is rich and simple at the same time
Supports both un-chunked and chunked
Supports both separate and combined AV
Index formats for efficient byte range operation
ISO base media file format w/common
encryption
Many useful stream and track annotations
Currently – best candidate for open standard
for adaptive streaming
CS 414 - Spring 2012
Conclusion

Metadata used by DASH and session
mobility approach use MPEG-21
international standard
 Facilitates
MPEG-21 Digital Item
 Leverages existing media repositories such
as UPnP

One possible implementation of DASH
 http://www-itec.uni-klu.ac.at/dash
CS 414 - Spring 2012