Lecture 12: Video Streaming
Instructor: Kate Ching-Ju Lin (林靖茹)
Wireless Communication Systems
@CS.NCTU
- Ch. 7-2 “Computer Networking: A Top-Down Approach”
Reference: http://www-users.cselabs.umn.edu/classes/Spring-2016/csci5221/
Wireless Communication Systems @CS.NCTU Lecture 12: Video Streaming - - PowerPoint PPT Presentation
Wireless Communication Systems @CS.NCTU Lecture 12: Video Streaming Instructor: Kate Ching-Ju Lin ( ) Ch. 7-2 Computer Networking: A Top-Down Approach Reference: http://www-users.cselabs.umn.edu/classes/Spring-2016/csci5221/
Reference: http://www-users.cselabs.umn.edu/classes/Spring-2016/csci5221/
dash/
Principles
entire file
will be rendered (implies storing/buffering at client)
traffic
limits delay tolerance, e.g., Skype, Google handout
3
recorded (e.g., 30 frames/sec)
sent
streaming: at this time, client playing out early part of video, while server still sending later part of video
network delay (fixed in this example) time
played out at client (30 frames/sec)
constant bit rate video transmission time variable network delay client video reception constant bit rate video playout at client client playout delay
buffered video
variable fill rate, x(t)
client application buffer, size B
playout rate, e.g., CBR r buffer fill level, Q(t) video server client
variable fill rate, x(t)
client application buffer, size B
playout rate, e.g., CBR r buffer fill level, Q(t) video server client
larger delay, but larger delay until user begins watching
variable fill rate, x(t)
client application buffer, size B
playout rate, e.g., CBR r buffer fill level, Q(t) video server
11
distributed interactive worlds
variable rate, x(t) TCP send buffer video file TCP receive buffer application playout buffer
server client
15
But you said multimedia apps requires QoS and level of performance to be effective!
delay
(transoceanic)
16
w/ controls for interactivity
chunks of smaller sizes
video chunks
17
Media Player
dash/
Principles
35 dB 30 dB 25 dB 20 dB 15 dB 10 dB
impaired one
https://www.slideshare.net/RockyS11/iptv-deployment- performance-planning-and-management-architecture
5 10 15 20 25 30 35 5 10 15 20
Packet Loss (%) PSNR (dB)
Problem area
Better Codecs Worse Codecs
n = 1
N
i=1
peak
n
MSE=0, original picture MSE=0, original picture MSE=225, MSSIM=0.949 MSE=225, MSSIM=0.688 MSE=225, MSSIM=0.723
Source: https://ece.uwaterloo.ca/~z70wang/research/ssim/
dash/
Principles
current bandwidth
in time (depending on available bandwidth at time)
28
as MPEG-DASH” in Apr. 2012
time
Segment 1 128Kb/s Segment 2 128KMb/s
Segment 3 128Kb/s Segment N 128Kb/s Segment 1 256Kb/s Segment 2 256Kb/s
Segment 3 256Kb/s Segment N 256Kb/s
Segment 1 1024Kb/s Segment 2 1024Kb/s Segment 3 1024Kb/s Segment N 1024Kb/s
rate
codecs)
32
Iraj Sodagar, “MPEG-DASH: The Standard for Multimedia Streaming Over Internet”
since a longer GOP needs less overhead
highly dynamic network conditions
Server:
Client:
35
Iraj Sodagar, “MPEG-DASH: The Standard for Multimedia Streaming Over Internet”
37
cloud, move to CDNs
38 http://www.statisticbrain.com/netflix-statistics/
§ Akamai, Limelight, Level-3 § Can play each of the CDNs against each other in terms
39
40
1
Netflix account Netflix registration, accounting servers Amazon cloud Akamai CDN Limelight CDN Level-3 CDN 2
Netflix video 3
returned for requested video
streaming upload copies of multiple versions of video to CDNs
3-41
42
Akamai CDN Limelight CDN Level-3 CDN Bob’s home network Public Internet Adjust bandwidth to Bob’s computer, see how Netflix responds
Vijay Kumar Adhikari, Yang Guo, Fang Hao, Matteo Varvello, Volker Hilt, Moritz Steiner, Zhi-Li Zhang, “Unreeling Netflix: Understanding and Improving Multi- CDN Movie Delivery”, INFOCOM, Orlando, FL, USA, March, 2012.
43
video segments
Apach and Dash.js https://github.com/Dash-Industry-Forum/dash.js/wiki
dash/
Principles
time bitrate PSNR CBR bitrate PSNR VBR time
47
48
DCT Q IQ IDCT Frame Memory MC Entropy Coding Encoder Buffer Decoder Buffer IQ IDCT Frame Memory MC
Network
Entropy Decoding
49
t Data in the Buffer B n n+1 Bn Bn+1 Slope = R 1/Pr dn+1
1 ³
n r n r
Overflow Constraint Underflow Constraint
B: maximum buffer size R: bit-rate Pr: number of picture per second dn: decoded bits in time n
50
https://en.wikipedia.org/wiki/Rate%E2%80%93distortion_theory
53