23
Providing Smoother Quality Layered Video Stream Shirhari Nelakuditi Raja R Harinath Ewa Kusmierek Zhi-Li Zhang Proceedings of NOSSDAV 2000

Providing Smoother Quality Layered Video Stream Shirhari Nelakuditi Raja R Harinath Ewa Kusmierek Zhi-Li Zhang Proceedings of NOSSDAV 2000

  • View
    212

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Providing Smoother Quality Layered Video Stream Shirhari Nelakuditi Raja R Harinath Ewa Kusmierek Zhi-Li Zhang Proceedings of NOSSDAV 2000

Providing Smoother Quality Layered Video Stream

Shirhari NelakuditiRaja R HarinathEwa KusmierekZhi-Li Zhang

Proceedings of NOSSDAV 2000

Page 2: Providing Smoother Quality Layered Video Stream Shirhari Nelakuditi Raja R Harinath Ewa Kusmierek Zhi-Li Zhang Proceedings of NOSSDAV 2000

Outline

Introduction Smoothness Criteria and Quality Metrics Optimal Layer Selection

– Maximize Average Run Length– Maximize Minimal Run Length– Maximize Expected Run Length

Experimental Result Conclusion

Page 3: Providing Smoother Quality Layered Video Stream Shirhari Nelakuditi Raja R Harinath Ewa Kusmierek Zhi-Li Zhang Proceedings of NOSSDAV 2000

Introduction

Streaming Constraints– Network Bandwidth– Client Buffer

Solution– Non-Layered Video : A video with different

quality (bit rate) version.– Layered Video : A video is split into layers,

and provide finer control on video quality.

Page 4: Providing Smoother Quality Layered Video Stream Shirhari Nelakuditi Raja R Harinath Ewa Kusmierek Zhi-Li Zhang Proceedings of NOSSDAV 2000

Introduction

Problem– Difficult to select layers such that better but

consistent quality is ensured when the network condition are constantly varying.

Object– Address the layer selection problem in layered

video delivery and show how smoother quality video playback can be provided by utilizing the client buffer for prefetching.

Page 5: Providing Smoother Quality Layered Video Stream Shirhari Nelakuditi Raja R Harinath Ewa Kusmierek Zhi-Li Zhang Proceedings of NOSSDAV 2000

Smoothness Criteria and Quality Metrics

How to define a metric that captures the user’s perception of video quality– The higher the amount of detail in the

video, the better is its quality.– It is visually more pleasing to watch a video

with consistent, albeit lower, quality than one with highly varying quality

Page 6: Providing Smoother Quality Layered Video Stream Shirhari Nelakuditi Raja R Harinath Ewa Kusmierek Zhi-Li Zhang Proceedings of NOSSDAV 2000

More gradual

Fewer change

Page 7: Providing Smoother Quality Layered Video Stream Shirhari Nelakuditi Raja R Harinath Ewa Kusmierek Zhi-Li Zhang Proceedings of NOSSDAV 2000

Smoothness Criteria

Metrics of the quality smoothness criteria– Higher weight to lower layers– Longer run (A sequence of consecutive frames shown in a layer)

M = (m1, m2, …, mL), L : number of layer

M1 is smoother than M2

if exist i

that m1j = m2

j, j<i and m1i > m2

i

Example:

M1 = (1, 1, 2, …)

M2 = (1, 1, 1,…..)

Page 8: Providing Smoother Quality Layered Video Stream Shirhari Nelakuditi Raja R Harinath Ewa Kusmierek Zhi-Li Zhang Proceedings of NOSSDAV 2000

Quality Metric

/N/N

k : the total number of urns in a layer

n1, , ,nk : the lengths of these runs

N : the length of the video sequence

Page 9: Providing Smoother Quality Layered Video Stream Shirhari Nelakuditi Raja R Harinath Ewa Kusmierek Zhi-Li Zhang Proceedings of NOSSDAV 2000

Exprun : ((1+1+2+3)/4)/12 = 0.145Minrun : 1/12 = 0.083Exprun : (12+12+22+32)/12 = 0.104

Page 10: Providing Smoother Quality Layered Video Stream Shirhari Nelakuditi Raja R Harinath Ewa Kusmierek Zhi-Li Zhang Proceedings of NOSSDAV 2000

Problem Formulation

Time Slot : represents the unit of time for playing back a video frame

Client buffer underflow curve with respect to S

Client buffer overflow curve with respect to S

Page 11: Providing Smoother Quality Layered Video Stream Shirhari Nelakuditi Raja R Harinath Ewa Kusmierek Zhi-Li Zhang Proceedings of NOSSDAV 2000

Problem Formulation

A(S) is said to be feasible with respect to S if and only if for i = 0, 1, ,,,,N

1. Rate constraint : i.e. ai(S) <= Ci

2. Buffer constraint : Ai(S) <= Ui(S)

3. Playback constraint : Di(S) <= Ai(S)

Page 12: Providing Smoother Quality Layered Video Stream Shirhari Nelakuditi Raja R Harinath Ewa Kusmierek Zhi-Li Zhang Proceedings of NOSSDAV 2000

Optimal Layer Selection

Assumption– Each layer in the video is of CBR.– All layers are the same bit rate.– Size of each frame in a layer is 1.– Buffer and bandwidth values are all integers.

//From lower layer to higher layer

Residual Bandwidth

Residual BufferOptimal subset

Page 13: Providing Smoother Quality Layered Video Stream Shirhari Nelakuditi Raja R Harinath Ewa Kusmierek Zhi-Li Zhang Proceedings of NOSSDAV 2000

Maximize Average Run Length

Key : minimizing the number of runs while keeping the sum of all the runs as high as possible.

A new run is not initiated unless the buffer is accumulated

Page 14: Providing Smoother Quality Layered Video Stream Shirhari Nelakuditi Raja R Harinath Ewa Kusmierek Zhi-Li Zhang Proceedings of NOSSDAV 2000

Forward Scan

Backward Scan

Page 15: Providing Smoother Quality Layered Video Stream Shirhari Nelakuditi Raja R Harinath Ewa Kusmierek Zhi-Li Zhang Proceedings of NOSSDAV 2000

Forward Scan

Buffer = 3

(1) Buffer = 1 S1 = 0

(2) Buffer = 1 S2 = 0

(3) Buffer = 2 S3 = 0

(4) Buffer = 3 S4 = 0

(5) Buffer = 3 S5 = 1

(6) Buffer = 2 S6 = 1

(7) Buffer = 2 S7 = 1

(8) Buffer = 1 S8 = 1

(9) Buffer = 0 S9 = 1(10) Buffer = 0 S10 = 0

Page 16: Providing Smoother Quality Layered Video Stream Shirhari Nelakuditi Raja R Harinath Ewa Kusmierek Zhi-Li Zhang Proceedings of NOSSDAV 2000

Backward Scan

Page 17: Providing Smoother Quality Layered Video Stream Shirhari Nelakuditi Raja R Harinath Ewa Kusmierek Zhi-Li Zhang Proceedings of NOSSDAV 2000

Maximal Average Run Length

Forward Scan– Identify the end of each run.– Minimal number of runs.

Backward Scan– Extend each run towards the front of it.– Maximizing the residual buffer made

available to higher layers.– Calculate residual bandwidth and buffer for

higher layers.

Page 18: Providing Smoother Quality Layered Video Stream Shirhari Nelakuditi Raja R Harinath Ewa Kusmierek Zhi-Li Zhang Proceedings of NOSSDAV 2000

Maximize Minimum Run Length

Key – Reduce the variance among the runs.– Grow the shorter runs while shrinking

their longer neighbor runs. Step

1. Start with a MAX_AVG_RUN

2. Readjust the length of each run without increasing the number of runs

Page 19: Providing Smoother Quality Layered Video Stream Shirhari Nelakuditi Raja R Harinath Ewa Kusmierek Zhi-Li Zhang Proceedings of NOSSDAV 2000

Maximize Minimum Run Length

nk and nk+1 are run length of consecutive run.

xk+1 is the limit length that run k+1 can grow.

if nk <= nk+1

continue with the next pair

else

select min((nk-nk+1+1)/2, xk+1) number of frames

Page 20: Providing Smoother Quality Layered Video Stream Shirhari Nelakuditi Raja R Harinath Ewa Kusmierek Zhi-Li Zhang Proceedings of NOSSDAV 2000

Maximize Expected Run Length

Key– The longer runs are in the sequence, the higher

it’s expected run length is.– Extension of a longer run contributes more

towards the expected run length than that of a shorter run.

Page 21: Providing Smoother Quality Layered Video Stream Shirhari Nelakuditi Raja R Harinath Ewa Kusmierek Zhi-Li Zhang Proceedings of NOSSDAV 2000

Experiment ResultThe video consists of 4 layers.

Mean Bandwidth :

•0<frame<10000 : 3.5

•10000<frame<20000 : 2.5

•20000<frame<30000 : 4.5

Varying bandwidth Buffer of 30

Page 22: Providing Smoother Quality Layered Video Stream Shirhari Nelakuditi Raja R Harinath Ewa Kusmierek Zhi-Li Zhang Proceedings of NOSSDAV 2000

Buffer of 300 Buffer of 900

Page 23: Providing Smoother Quality Layered Video Stream Shirhari Nelakuditi Raja R Harinath Ewa Kusmierek Zhi-Li Zhang Proceedings of NOSSDAV 2000

Conclusion

We defined smoothness criteria and designed metrics namely, avgrun, minrun, and exprun for measuring smoothness

We developed an optimal offline algorithm to find maximal average run length when network conditions are known a priori