Está en la página 1de 45

BITS Pilani

Hyderabad Campus

Multimedia
Abhishek Thakur
Computing
CSIS
BITS-Pilani, Hyderabad
Campus

BITS Pilani
Hyderabad Campus

Multimedia Computing
Modern Multimedia Systems
Module -9 (of 10)

BITS Pilani
Hyderabad Campus

Online materials

Modules
Module

Coverage

1. Introduction

Overview of Multimedia Applications, Systems and


Tools

2. Data Compression

Lossless and Lossy compression

3. Image, Graphics and


Colors

Graphics and Image Data Representation, Colour


Science and JPEG

4. Video / Audio
Fundamentals

Basics of Audio and Video as they evolved

5. Video Compression

H261 H264,MPEG and High Efficiency Video Coding

6. Audio and
Synchronization

Audio compression techniques and synchronization


between audio, video, text, graphics etc.

7. Storage and
Communication Basics

Overview of secondary storage and networks, latency,


buffering / queuing, interrupts etc.

8. Multimedia
Communication

Real time communication protocols, Quality of Service,


MPEG transport, Wireless communication

9. Modern Multimedia
Systems

New protocols (DASH) and applications (YouTube,


Content Distribution).

10. Research trends


and Computing
Video Search,
object detection
and
course
Multimedia
10/4/16
Slide 4 and tracking
BITS Pilani,
Hyderabad
Campus

9.1 DASH
Dynamic Adaptive Streaming using HTTP
Ref: Prof. Klara Nahrstedt, CS Department UIUC and Thomas
Stockhammer, Qualcomm and Wikipedia

Multimedia Computing

10/4/16

Slide 5

BITS Pilani, Hyderabad Campus

Multimedia over HTTP


UDP / RTP based transports work in enterprise environment where
network constraint of NAT and Firewalls are managed by experts.
It frequently fails for non-tech savvy consumers.
Over time, bandwidth to end user has improved they now expect
higher quality content (possibly paid): e.g. Netflix or other Video on
Demand apps.

Exploring HTTP/TCP provides a significant optimization for such


scenarios.
BUT can the user wait for whole file to download? What if large videos cannot
be saved in advance? What if bandwidth fluctuates in between?
Multimedia Computing

10/4/16

Slide 6

BITS Pilani, Hyderabad Campus

DASH: Dynamic Adaptive


Streaming over HTTP
Similar works
HLS(Apples HTTP Live Streaming)
Microsofts Smooth Streaming
Adobes HTTP Dynamic Streaming

Multimedia Computing

10/4/16

Slide 7

BITS Pilani, Hyderabad Campus

APPLICATION

Internet Multimedia Protocol


Stack
Media encaps
Synchronization Service

DASH

SIP

RTSP

RSVP

(H.264, MPEG-4)
Layer 5
(Session)

RTCP
RTP

HTTP

KERNEL

TCP

DCCP

UDP

IP Version 4, IP Version 6
AAL5

AAL3/4

MPLS

ATM/Fiber Optics
Ref: CS 414 - Spring 2014
Prof. Prof. Klara Nahrstedt
, CS Department UIUC

Layer 4
(Transport)
Layer 3
(Network)

Layer 2
(Link/MAC)

Ethernet/WiFi

Problems with Internet


Video
Video not
accessible
Video Behind
firewall
Plugins not
available
Bandwidth not
sufficient
Wrong and nontrust device
Wrong format
Ref: CS 414 - Spring 2014
Prof. Prof. Klara Nahrstedt
, CS Department UIUC

Low Quality of
Experience
Long start-up
latency
Frequent
rebuffering
Low playback
quality
No lip-sync

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


Multimedia Computing

10/4/16

Slide 10

BITS Pilani, Hyderabad Campus

Growth of Mobile
Internet/Video

Thomas Stockhammer, Qualcomm, DASH Design Principles and Standards , MMSys 2011

Adaptive Streaming
One approach to tackle
problems/challenges

Ref: CS 414 - Spring 2014


Prof. Prof. Klara Nahrstedt
, CS Department UIUC

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.

Ref: CS 414 - Spring 2014


Prof.
Prof. Klara Nahrstedt, CS D
epartment UIUC
Multimedia Computing

10/4/16

Slide 13

BITS Pilani, Hyderabad Campus

Adaptive Streaming

One Approach of Adaptive Streaming


. Server sends first the high important video information (e.g., I frames)
nd after the high importance video information is sent, lower importance
ideo information follows (e.g., P and B frames) if bandwidth and time allows
econd Approach of Adaptive Streaming
. Server sends with high quality part of the frame and only progressively ,if
andwidth and time allow, it sends the rest of the frame information
hird Approach of Adaptive Streaming
. At server video is encoded in multiple bitrates and depending on the device
andwidth it adjusts at what rate
Ref: CS 414 - Spring 2014
Prof. Prof. Klara Nahrstedt
Other approaches exist
, CS Department UIUC
Source: http://www.dicomdistribution.com/Adaptive%20Streaming.html

Standardization History

Thomas Stockhammer, Qualcomm, DASH Design Principles and Standards ,


Presentation at MMSys 2011
Multimedia Computing

10/4/16

Slide 15

BITS Pilani, Hyderabad Campus

Adaptive HTTP Streaming System


(Protocol)

Server
Can be standard
web server
Media segment can
be prepared in-line
or off-line
Ref: CS 414 - Spring 2014
Prof.
Prof. Klara Nahrstedt, CS D
epartment UIUC

Client
Sends series of HTTP
GET segment requests
and receives segments
Performs rate adaptation
before sending a new
GET segment request

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

Ref: CS 414 - Spring 2014


Prof.
Prof. Klara Nahrstedt, CS D
epartment UIUC
Multimedia Computing

10/4/16

Slide 17

BITS Pilani, Hyderabad Campus

Terms and Definitions of


Adaptive HTTP Streaming
Need
Media Presentation Description (MPD) 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

Ref: CS 414 - Spring 2014


Prof.
Prof. Klara Nahrstedt, CS D
epartment UIUC

CS 414 - Spring 2014


Multimedia Computing

10/4/16

Slide 18

BITS Pilani, Hyderabad Campus

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)
Ref: CS 414 - Spring 2014
Prof.
Prof. Klara Nahrstedt, CS D
epartment UIUC
Multimedia Computing

10/4/16

Slide 19

BITS Pilani, Hyderabad Campus

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: MMSys11
CS 414 - Spring 2014
Multimedia Computing

10/4/16

Slide 21

BITS Pilani, Hyderabad Campus

Media Presentation Data


MPD - description of accessible
segments and corresponding timing
Model

Ref: CS 414 - Spring 2014


Prof.
Prof. Klara Nahrstedt, CS D
epartment UIUC

MPD 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
Ref: CS 414 - Spring 2014
Prof.
Prof. Klara Nahrstedt, CS D
epartment UIUC
Multimedia Computing

10/4/16

Slide 23

BITS Pilani, Hyderabad Campus

Media Segments (1)


Contain information to map segment into media presentation
timeline for switching and synchronous presentation with
other representations
Can be short (~ 1-10 seconds)
Can be long (~10 sec 2 hours)

Ref: CS 414 - Spring 2014


Prof.
Prof. Klara Nahrstedt, CS D
epartment UIUC
Multimedia Computing

10/4/16

Slide 24

BITS Pilani, Hyderabad Campus

Media Segments (2)


Media segment
duration

advantages

Short duration

Commonality with live - Large number of


high switching
files
- Large number of
granularity on
segment level
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

Ref: CS 414 - Spring 2014


Prof.
Prof. Klara Nahrstedt, CS D
epartment UIUC

Multimedia Computing

10/4/16

disadvantages

- Need for segment


index
- Difference from live

Slide 25

BITS Pilani, Hyderabad Campus

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
Multimedia Computing

10/4/16

Slide 26

BITS Pilani, Hyderabad Campus

Media Segment with Segment Index

Ref: CS 414 - Spring 2014


Prof.
Prof. Klara Nahrstedt, CS D
epartment UIUC

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,
Ref: CS 414 - Spring 2014
Prof. Prof. Klara Nahrstedt
, CS Department UIUC

Multimedia Computing

10/4/16

Slide 28

BITS Pilani, Hyderabad Campus

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
Ref: CS 414 - Spring 2014
Prof.
Prof. Klara Nahrstedt, CS D
epartment UIUC

CS 414 - Spring 2014


Multimedia Computing

10/4/16

Slide 29

BITS Pilani, Hyderabad Campus

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

Ref: CS 414 - Spring 2014


Prof. Prof. Klara Nahrstedt
, CS Department UIUC
Multimedia Computing

10/4/16

Slide 30

BITS Pilani, Hyderabad Campus

9.2 CDN
Heard of Akamai Networks?
How does YouTube / Facebook scale?
Most of the content is Write/Create once Read / Consume / Play
multiple times.
Access may happen across Geographical areas and at different
times.
Content Distribution Networks
Multimedia Computing

10/4/16

Slide 31

BITS Pilani, Hyderabad Campus

Future Internet Architectures


Legacy Internet (1980- late 1990s)
Smart end hosts and simple (dumb) network elements.
Focus on static machines as hosts
Almost all links were wired or static in nature (e.g. directional
antennas)
New needs:
Mobility
Smarted network elements
Interplanetary communication
Focus on person or information instead of Host
Multimedia Computing

10/4/16

Slide 32

BITS Pilani, Hyderabad Campus

Information Centric Network /


Data Driven Network
The architecture focusses more on content, its identity, its
transformation, its access etc. instead of network elements
and protocols that enable connectivity.
Really efficient for scenarios where multiple access happens.

Multimedia Computing

10/4/16

Slide 33

BITS Pilani, Hyderabad Campus

How to Do CDN
Origin server based optimization by modifying HTTP/HTML
response.
DNS based optimization (e.g. edns-client-subnet EDNS0 option
to accurately localize DNS resolution responses to
geographical vicinity.
Access network based optimization e.g. Telco CDN
Other options P2P CDN, Enterprise CDN (local caching proxy
etc.)

Multimedia Computing

10/4/16

Slide 34

BITS Pilani, Hyderabad Campus

Key CDN concepts


Who drives the pull from origin server?
When to discard old cached entries?
What to cache : small files, large files, initial parts of small files etc.
Can the cache be done on a cluster of hosts?
Can caching clusters talk to each other before asking Origin?
How does origin server update the content (if modified/deleted).
Multimedia Computing

10/4/16

Slide 35

BITS Pilani, Hyderabad Campus

9.3 Large Scalable File Systems


How to store massive amount of data at low cost?
How to handle data corruption?

Multimedia Computing

10/4/16

Slide 36

BITS Pilani, Hyderabad Campus

YouTube 2015 (June)


Started 10 year ago (23 April 2005)
YouTube has more than 1 billion users
The number of hours people are watching on YouTube each month is up 50% year over
year
300 hours of video are uploaded to YouTube every minute
~60% of a creators views comes from outside their home country
YouTube is localized in 75 countries and available in 61 languages
Half of YouTube views are on mobile devices
Mobile revenue on YouTube is up over 100% y/y
Early 2014 metrics
Total number of YouTube videos (2014) 120 Billion
Number of videos uploaded per day about 200,000
Time required to see all videos over 600 years
Amount of content uploaded every minute 100 hours
80% of YouTube traffic comes from outside of US
Ref: CS 414 - Spring 2014
Prof. Prof. Klara Nahrstedt
, CS Department UIUC

Source: http://www.youtube.com/t/press_statistics

Multimedia Computing

10/4/16

Slide 39

BITS Pilani, Hyderabad Campus

How to handle massive scale?


Size

Performance

Location

Cost

In 1980s Size and


Performance were
attempted using RAID

CDN provides some


respite but is the
cost acceptable?

Redundant Array of
Independent
(Inexpensive) Disks

CDN works at URL


level very high in
the stack level.

Close to hardware with


some software magic

Can we have
optimizations lower
in the stack?

Multimedia Computing

10/4/16

Slide 40

BITS Pilani, Hyderabad Campus

Large Scalable File Systems


Hadoop File System
Google File System
Big Table
Spanner

Commodity Storage Devices


Optimized for Read Intensive with create / append focus
Updates are more costly than writes / reads
Replicate across hosts (and data centers CDN based
replica)

Multimedia Computing

10/4/16

Slide 41

BITS Pilani, Hyderabad Campus

HDFS Hadoop File System


HDFS stores large files (typically gigabytes to terabytes) across
multiple machines by maintaining multiple replica (3 as default).
Two replicas are on the same rack, and one on a different rack.
Data nodes can talk to each other to rebalance data, to move
copies around, and to keep the replication of data high when
commodity hardware fails (disk / server / router etc.)
Primarily a tool for enabling Map-Reduce and similar paradigms for
Hadoop based solutions.
In 2010, Facebook claimed that they had the largest Hadoop
cluster in the world with 21 PB of storage. In 2012, they
announced the data had grown to 100 PB and the data gathered
in the warehouse grows by roughly half a PB per day.
Multimedia Computing

10/4/16

Slide 42

BITS Pilani, Hyderabad Campus

Google File System (1/3)


GFS is a file system optimized for Google's primary needs (search / indexing)
Google File System grew out of an earlier Google effort, "BigFiles", developed
by Larry Page and Sergey Brin in the early days of Google, while it was still
located in Stanford.
Files are divided into fixed-size chunks of 64 megabytes, similar to clusters or
sectors in regular file systems, which are only extremely rarely overwritten,
or shrunk; files are usually appended to or read.
It is also designed and optimized to run on Google's computing clusters, dense
nodes which consist of cheap "commodity" computers, which means
precautions must be taken against the high failure rate of individual nodes
and the subsequent data loss. Other design decisions select for high data
throughputs, even when it comes at the cost of latency.
Multimedia Computing

10/4/16

Slide 43

BITS Pilani, Hyderabad Campus

Google File System (2/3)


A GFS cluster consists of multiple nodes.
These nodes are divided into two types: one Master node and a
large number of Chunkservers.
Each file is divided into fixed-size chunks. Chunkservers store
these chunks.
Each chunk is assigned a unique 64-bit label by the master
node at the time of creation, and logical mappings of files to
constituent chunks are maintained.
Each chunk is replicated several times throughout the network,
with the minimum being three, but even more for files that
have high end-in demand or need more redundancy.

Multimedia Computing

10/4/16

Slide 44

BITS Pilani, Hyderabad Campus

Google File System (3/3)

Multimedia Computing

10/4/16

Slide 45

BITS Pilani, Hyderabad Campus

Big Table
BigTable maps two arbitrary string values (row key and column key) and timestamp (hence three-

into an associated arbitrary byte array. It is not a relational database and can be better defined as
a sparse, distributed multi-dimensional sorted map.
dimensional mapping)

Scales into the petabyte range across "hundreds or thousands of machines, and to make it easy to add
more machines [to] the system and automatically start taking advantage of those resources without any
reconfiguration
Table has multiple dimensions (one of which is a field for time, allowing for versioning and garbage collection).
Tables are optimized for Google File System (GFS) by being split into multiple tablets segments
of the table are split along a row chosen such that the tablet will be ~200 megabytes in size.
When sizes threaten to grow beyond a specified limit, the tablets are compressed using the
algorithms which are a less space-optimal but more efficient in terms of computing time.
Apache Accumulo is a similar release in open source.
Googles Spanner is a successor to Big Table in the sense that it adds Transactional capabilities.

Multimedia Computing

10/4/16

Slide 46

BITS Pilani, Hyderabad Campus

Thank You !!

Multimedia Computing

10/4/16

Slide 47

BITS Pilani, Hyderabad Campus

También podría gustarte