Transcript PPT
CS 414 – Multimedia Systems Design
Lecture 29 –
DASH (Dynamic Adaptive
Streaming over HTTP)
Klara Nahrstedt
Spring 2014
CS 414 - Spring 2014
Administrative
MP2 posted
MP2 Deadline – April 12, Saturday, 5pm.
CS 414 - Spring 2014
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 2014
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 2014
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 2014
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 2014
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.
CS 414 - Spring 2014
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 ,
CS 414 - Spring 2014
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 2014
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 2014
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 2014
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)
CS 414 - Spring 2014
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 2014
Media Presentation Data Model
MDP - description of accessible segments and corresponding timing
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 2014
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 2014
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 2014
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 2014
Media Segment with Segment
Index
CS 414 - Spring 2014
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 2014
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 2014
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 2014