![Page 1: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/1.jpg)
Dynamic Control of Video Qualityfor Adaptive Video Streaming
Ankit Singh Rawat (CMU)
Joint work with Emina Soljanin (Bell Labs)
October 14, 2015
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 2: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/2.jpg)
Video traffic growth
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 3: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/3.jpg)
Video traffic growth
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 4: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/4.jpg)
Video traffic growth
Two broad challengesI Storage of the content.I Delivery of the content to end users.
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 5: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/5.jpg)
Adaptive video streaming
Chunk 1 Chunk 2 Chunk M
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 6: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/6.jpg)
Adaptive video streaming
Chunk 2 Chunk M
Chunk 1
Chunk 1
Chunk 1
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 7: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/7.jpg)
Adaptive video streaming
Chunk M
Chunk 1 Chunk 2
Chunk 1 Chunk 2
Chunk 1 Chunk 2
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 8: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/8.jpg)
Adaptive video streaming
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 9: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/9.jpg)
Adaptive video streaming
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 10: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/10.jpg)
Adaptive video streaming
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Video Server
(Large Storage)
Base Station
Clients
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 11: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/11.jpg)
Adaptive video streaming
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Video ServerBase Station
Clients
Chunk 2
Chunk 1 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 2 Chunk M
Chunk 1
slot 1 slot 2 slot M
Effective channel b/w the server and the clients is not constant.
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 12: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/12.jpg)
Adaptive video streaming
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Video ServerBase Station
Clients
Chunk 2
Chunk 1 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 2 Chunk M
Chunk 1
slot 1 slot 2 slot M
Effective channel b/w the server and the clients is not constant.
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 13: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/13.jpg)
Adaptive video streaming
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Video ServerBase Station
Clients
Client’s Bu↵er
Chunk 2
Chunk 1 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 2 Chunk M
Chunk 1
slot 1 slot 2 slot M
Pull-based streaming vs. push-based streaming.
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 14: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/14.jpg)
Adaptive video streaming
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 1 Chunk 2 Chunk M
Video ServerBase Station
Clients
Client’s Bu↵er
Chunk 2
Chunk 1 Chunk M
Chunk 1 Chunk 2 Chunk M
Chunk 2 Chunk M
Chunk 1
slot 1 slot 2 slot M
Pull-based streaming vs. push-based streaming.
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 15: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/15.jpg)
Quality of experience (QoE) metrics
1 Probability of buffer starvation/overflow (interruptions).
2 Number of chunks watched in high quality.
3 Number of transitions between video qualities (fluctuations).
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 16: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/16.jpg)
Avoiding buffer starvations
time (t)
No.ofch
unksin
bu↵erQ(t)
Bu↵er Limit B
Initial Bu↵ering
Tbuild
D
Bu↵er Starvation
Q(t) = D + A(t � Tbuild
)� rate
pb · (t � D).
[1] A. ParandehGheibi et al. “Avoiding interruptions - QoE trade-offs inblock-coded streaming media applications”. ISIT 2010.
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 17: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/17.jpg)
Avoiding buffer starvations
time (t)
No.ofch
unksin
bu↵erQ(t)
Bu↵er Limit B
Initial Bu↵ering
Tbuild
D
Bu↵er Starvation
Initial buffering period to avoid buffer starvations.
Choose D such that that probability of buffer starvation ✏.
Single video quality level.
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 18: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/18.jpg)
Problem statement
The server stores L description (quality levels) of a video file.
I Quality decreases from level 1 to level L.
Assume a stochastic channel model and a fixed scheduler.
Scheduling scheme dictates the arrival processes {Xi [n]}n�1.
I Xi [n]: # of chunks of quality level i downloaded in n-th play-out slot.
Each play-out slot comprises multiple scheduling slots.
To design video quality selection scheme with high QoE.
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 19: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/19.jpg)
Problem statement
The server stores L description (quality levels) of a video file.
I Quality decreases from level 1 to level L.
Assume a stochastic channel model and a fixed scheduler.
Scheduling scheme dictates the arrival processes {Xi [n]}n�1.
I Xi [n]: # of chunks of quality level i downloaded in n-th play-out slot.
Each play-out slot comprises multiple scheduling slots.
To design video quality selection scheme with high QoE.
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 20: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/20.jpg)
Our contribution
Previously known approaches involveI Estimation of effective bandwidth.I Knowledge of other parts of the system.
We propose a simple dynamic quality selection algorithm.I Requires only the current state of the buffer.
The algorithm divides the buffer range into multiple levels.
Switches among quality levels based on upward/downward buffer-statecrossing of these levels.
Quanitative analysis of various QoE metrics of interest.
[2] T.-Y. Huang et al. “Downton Abbey without the hiccups: buffer-based rateadaptation for HTTP video streaming”. ACM SIGCOMM 2013 Workshop onFhMN.
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 21: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/21.jpg)
Description of the proposed quality selection algorithm
Input: For quality level i 2 [L], four thresholds
{`down
i , `low
i , `high
i , `up
i } 2 [B].
1: Two candidate quality levels (qlow, qhigh = qlow � 1).2: Initial buffering.3: while Downloading is incomplete do4: Update candidate quality levels.5: Switch between the current candidate quality levels.6: Download chunks of the selected quality level.7: Go to line 2, if buffer gets empty.8: end while
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 22: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/22.jpg)
Description of the proposed quality selection algorithm
Input: For quality level i 2 [L], four thresholds
{`down
i , `low
i , `high
i , `up
i } 2 [B].
1: Two candidate quality levels (qlow, qhigh = qlow � 1).2: while Buffer has less than D chunks do3: Download chunks of quality level qhigh.4: end while5: while Downloading is incomplete do6: Update candidate quality levels.7: Switch between the current candidate quality levels.8: Download chunks of the selected quality level.9: Go to line 2, if buffer gets empty.
10: end while
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 23: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/23.jpg)
Description of the proposed quality selection algorithm
Input: For quality level i 2 [L], four thresholds
{`down
i , `low
i , `high
i , `up
i } 2 [B].
1: Two candidate quality levels (qlow, qhigh = qlow � 1).2: Initial buffering.3: while Downloading is incomplete do4: if Q[n] > `up
qhigh
or Q[n] < `down
qlow
then5: Update candidate quality levels.6: end if7: Switch between the current candidate quality levels.8: Download chunks of the selected quality level.9: Go to line 2, if buffer gets empty.
10: end while
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 24: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/24.jpg)
Description of the proposed quality selection algorithm
Input: For quality level i 2 [L], four thresholds
{`down
i , `low
i , `high
i , `up
i } 2 [B].
1: Two candidate quality levels (qlow, qhigh = qlow � 1).2: Initial buffering.3: while Downloading is incomplete do4: Update candidate quality levels.5: if qdownload = qhigh and Q[n] `low
qlow
then6: Set qdownload = qlow.7: else if qdownload = qlow and Q[n] � `high
qhigh
then8: Set qdownload = qhigh.9: end if
10: Download chunks of the selected quality level.11: Go to line 2, if buffer gets empty.12: end while
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 25: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/25.jpg)
Thresholds based quality selection algorithm
play-out slot (n)
Q[n]
`low3
`high2
`down3
`up2
B
n1
D
n2
Q[n + 1] = max�
0,min�
Q[n] + X(·)[n]� 1,B
, n � n1.
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 26: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/26.jpg)
Thresholds based quality selection algorithm
play-out slot (n)
Q[n]
`low3
`high2
`down3
`up2
B
n1
D
n2
n3
n3a
Q[n + 1] = max�
0,min�
Q[n] + X(·)[n]� 1,B
, n � n1.
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 27: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/27.jpg)
Thresholds based quality selection algorithm
play-out slot (n)
Q[n]
`low3
`high2
`down3
`up2
B
n1
D
n2
n3
n3a n
4
n4a
Q[n + 1] = max�
0,min�
Q[n] + X(·)[n]� 1,B
, n � n1.
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 28: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/28.jpg)
Thresholds based quality selection algorithm
play-out slot (n)
Q[n]
`low3
`high2
`down3
`up2
B
n1
D
n2
n3
n3a n
4
n4a n
5
Q[n + 1] = max�
0,min�
Q[n] + X(·)[n]� 1,B
, n � n1.
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 29: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/29.jpg)
Analysis of the proposed quality selection algorithm
Two quality levels, i.e., L = 2.
Buffer evolution process = high phases + low phases.
t ih = duration of the i-th high phase.
t i` = duration of the i-th low phase.
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 30: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/30.jpg)
Analysis of the proposed quality selection algorithm
Two quality levels, i.e., L = 2.Buffer evolution process = high phases + low phases.
play-out slot (n)
`down2
= 0
Q[n]
`low2
`high1
B = `up1
n1
D
n2
n3
n4
n5
t1h � n1
t1` t2h t2`
t ih = duration of the i-th high phase.
t i` = duration of the i-th low phase.
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 31: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/31.jpg)
Thresholds based quality selection algorithm
play-out slot (n)
Q[n]
`low2
`high1
B
n1
D
n2
n3
n4
n5
t1h � n1
t1` t2h t2`
n2
n3
0
`low2
`high1 Lowphase
• RandomWalk on integers
Q[n] = `low2
+
n�1X
t=n2
(X2
[t]� 1)
• Starting point: `low2
.
• Boundary points: `high1
and 0.
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 32: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/32.jpg)
Thresholds based quality selection algorithm
play-out slot (n)
Q[n]
`low2
`high1
B
n1
D
n2
n3
n4
n5
t1h � n1
t1` t2h t2`
n3
n4
`low2
`high1
Bu↵er Limit B
High phase
• RandomWalk on integers
Q[n] = Q[n3
]+
n�1X
t=n3
(X1
[t]�1)
• Random starting point.
• Boundary points: B and `low2
.
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 33: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/33.jpg)
Analysis of the proposed quality selection algorithm
play-out slot (n)
`down2
= 0
Q[n]
`low2
`high1
B = `up1
n1
D
n2
n3
n4
n5
t1h � n1
t1` t2h t2`
t ih = duration of the i-th high phase.
t i` = duration of the i-th low phase.
We assume that the download process involves S low phases.Beginning of each low phase serves as a ‘regenerating point’.
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 34: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/34.jpg)
Relevant work
Similar models have previously been studied in different contexts.Steady state analysis (infinite horizon problem).We study bounds on different QoE metrics as opposed toperforming an exact analysis.
[1] M. Roughan and C.E.M. Pearce, Martingale methods for analysingsingle-server queues, Queueing Systems, July 2002.
[2] V. I. Lotov, On oscillating random walks, Siberian Mathematical Journal,1992.
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 35: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/35.jpg)
Probability of buffer starvation free play-outLemma
P�
Q[n] > 0, n1 n nend
� E{⇢bS}.
Here,
⇢ = probability that low phase ends at `high
1 .
bS = minn2N�
n :Pn
i=1bZi � MF � D
.
bZi ⇠ length of complete starvation free low phase + high phase.
0
`low2
`high1
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 36: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/36.jpg)
Probability of buffer starvation free play-out
Theorem
P�
Q[n] > 0, n1 n nend
� 1 � e�s⇤`low
2
E{bZ1}
MF � D +
E{(bZ1)2}E{bZ1}
!,
where s⇤ > 0 is such that
lnE�
es⇤(�X2[n]+1) = 0.
Proof Outline:
⇢ � 1 � e�s⇤`low
2 .
P�
Q[n] > 0, n1 n nend
� E{⇢bS}
� E{(1 � e�s⇤`low
2 )bS}
� 1 � E{bS}e�s⇤`low
2 .
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 37: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/37.jpg)
Probability of buffer starvation free play-out
Theorem
P�
Q[n] > 0, n1 n nend
� 1 � e�s⇤`low
2
E{bZ1}
MF � D +
E{(bZ1)2}E{bZ1}
!,
where s⇤ > 0 is such that
lnE�
es⇤(�X2[n]+1) = 0.
Proof Outline:
⇢ � 1 � e�s⇤`low
2 .
P�
Q[n] > 0, n1 n nend
� E{⇢bS}
� E{(1 � e�s⇤`low
2 )bS}
� 1 � E{bS}e�s⇤`low
2 .
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 38: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/38.jpg)
Probability of buffer starvation free play-out
Theorem
P�
Q[n] > 0, n1 n nend
� 1 � e�s⇤`low
2
E{bZ1}
MF � D +
E{(bZ1)2}E{bZ1}
!,
where s⇤ > 0 is such that
lnE�
es⇤(�X2[n]+1) = 0.
Proof Outline:
⇢ � 1 � e�s⇤`low
2 .
P�
Q[n] > 0, n1 n nend
� E{⇢bS}
� E{(1 � e�s⇤`low
2 )bS}
� 1 � E{bS}e�s⇤`low
2 .0
`low2
`high1
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 39: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/39.jpg)
Probability of buffer starvation free play-out
Theorem
P�
Q[n] > 0, n1 n nend
� 1 � e�s⇤`low
2
E{bZ1}
MF � D +
E{(bZ1)2}E{bZ1}
!,
where s⇤ > 0 is such that
lnE�
es⇤(�X2[n]+1) = 0.
Proof Outline:
P�
Q[n] > 0, n1 n nend
� 1 � E{bS}e�s⇤`low
2 .
Note that bS = minn2N�
n :Pn
i=1bZi � MF � D
.
Using Wald’s identity and Lorden’s result on excess over the boundary.
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 40: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/40.jpg)
Probability of buffer starvation/overflow free play-outTheoremThe probability of starvation/overflow free play-out is at least
1 � e�r⇤(B�D) � e�s⇤`low
2 + e�r⇤(B̃�`high
1 )
E{eZ1}
⇣MF � D +
E{(eZ1)2}E{eZ1}
⌘.
Here, B̃ = B � f (cmax) + 1 and s⇤, r⇤ > 0 such that
lnE�
es⇤(�X2[n]+1) = 0, lnE�
er⇤(X1[n]�1) = 0.
eZ1 = length of complete low phase (no starvation) + high phase (no overflow).
play-out slot (n)
`down2
= 0
Q[n]
`low2
`high1
B = `up1
n1
D
n2
n3
n4
n5
t1h � n1
t1` t2h t2`
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 41: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/41.jpg)
Fluctuations in video quality
S: number of low phases during the download process.
Number of transitions between video qualitiesh2S � 1�
downloading ends in S-th low phase. i+
.
play-out slot (n)
`down2
= 0
Q[n]
`low2
`high1
B = `up1
n1
D
n2
n3
n4
n5
t1h � n1
t1` t2h t2`
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 42: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/42.jpg)
Fluctuations in video qualityNumber of transitions between video qualities
h2S � 1�
downloading ends in S-th low phase. i+
.
Lemma
Let downloading the file F involves S low phases, then
MF � D � E{ND}E{t1
` }+ E{t2h}
E{S} MF � D � E{ND}E{t1
` }+ E{t2h}
+ 1.
play-out slot (n)
`down2
= 0
Q[n]
`low2
`high1
B = `up1
n1
D
n2
n3
n4
n5
t1h � n1
t1` t2h t2`
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 43: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/43.jpg)
Fluctuations in video qualityMF � D � E{ND}E{t1
` }+ E{t2h}
E{S} MF � D � E{ND}E{t1
` }+ E{t2h}
+ 1.
Note that, ND = (t1h � n1)� (D � `low
2 ).
Need to compute E{t1` }, E{t2
h} and E{t1h � n1}.
I Expected time for a random walk between two levels to hit one levelbefore hitting another level.
I Using Wald’s fundamental identity.
play-out slot (n)
`down2
= 0
Q[n]
`low2
`high1
B = `up1
n1
D
n2
n3
n4
n5
t1h � n1
t1` t2h t2`
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 44: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/44.jpg)
Average video quality
Expected number of chunks watched in high quality,
⌦ = D + E�
ND +SX
i=1
Ni+1h .
Using Wald’s inequality,
⌦ = D + E{ND}+ E{S � 1}E{N2h}+ E{NS+1
h }.
Combind the bounds on E{S} with
E{t2h}� (`high
1 + f (cmax)� 1 � `low
2 ) E{N2h} E{t2
h}� (`high
1 � `low
2 ).
and0 E{NS+1
h } E{t2h}� (`high
1 � `low
2 ).
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 45: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/45.jpg)
Conclusion
Video delivey uses a very large portion of available bandwidth.
Efficient utilization of the bandwidth with high QoE is essential.
ContributionWe propose a quality selection scheme for adaptive video streaming
Depends only on the client’s local knowldege = buffer state.
Allow control on important QoE metrics through various thresholds.
Future workExtension of our analysis to more than two quality levels.
Multi-user setting.
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 46: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/46.jpg)
Thank you!
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 47: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/47.jpg)
Control of QoE metrics by varying thresholds
0 200 400 600 800 10000
20
40
60
Time (# of slots)
# o
f ch
un
ks in
bu
ffe
r
100 200 300 400 500 600 700 800 9000
1
2
Time (# of slots)
Qu
alit
y le
vel d
ow
nlo
ad
ed
High threshold
Low threshold
(B,Lh, L`, D) = (70, 50, 20, 30)
0 200 400 600 800 10000
20
40
60
Time (# of slots)
# o
f ch
un
ks in
bu
ffe
r
100 200 300 400 500 600 700 800 9000
1
2
Time (# of slots)
Qu
alit
y le
vel d
ow
nlo
ad
ed
High Threshold
Low Threshold
(B,Lh, L`, D) = (70, 35, 20, 30)
Size of a high quality chunk: 12 bits, Size of a low quality chunk: 10 bits.
Each playback slot consists of 5 scheduling slots.
Random number of bits can be transmitted in each scheduling slot suchthat
10 Ravg
(in bits per playback slot) 12
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015
![Page 48: Dynamic Control of Video Quality for Adaptive Video Streaming · Dynamic Control of Video Quality for Adaptive Video Streaming Ankit Singh Rawat (CMU) Joint work with Emina Soljanin](https://reader033.vdocument.in/reader033/viewer/2022051607/60352a301c2a770a8c4a6133/html5/thumbnails/48.jpg)
Control of QoE metrics by varying thresholds
0 200 400 600 800 10000
20
40
60
Time (# of slots)
# o
f ch
un
ks in
bu
ffe
r
100 200 300 400 500 600 700 800 9000
1
2
Time (# of slots)
Qu
alit
y le
vel d
ow
nlo
ad
ed
High threshold
Low threshold
(B,Lh, L`, D) = (70, 50, 20, 30)
Avg. # of fluctuations: 7.4
Fraction of time in high phase:0.62
Fraction of chunks watched inhigh quality: 0.56
0 200 400 600 800 10000
20
40
60
Time (# of slots)
# o
f ch
un
ks in
bu
ffe
r
100 200 300 400 500 600 700 800 9000
1
2
Time (# of slots)
Qu
alit
y le
vel d
ow
nlo
ad
ed
High Threshold
Low Threshold
(B,Lh, L`, D) = (70, 35, 20, 30)
Avg. # of fluctuations: 13.3
Fraction of time in high phase:0.63
Fraction of chunks watched inhigh quality: 0.57
A. S. Rawat and E. Soljanin Dynamic Control of Video Quality for AVS October 14, 2015