1 / 49

Integrated Optimization of Video Server Resource and Streaming Quality Over Best-Effort Network

Integrated Optimization of Video Server Resource and Streaming Quality Over Best-Effort Network. Authors: Hang Yu, Ee-Chien Chang, Wei Tsang Ooi Presented by: Xiaoyan Sun, Qianwen Geng. Outline. Introduction & Motivation Assumptions and Notations Expected Recovered Frame Rate

gianna
Download Presentation

Integrated Optimization of Video Server Resource and Streaming Quality Over Best-Effort Network

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Integrated Optimization of Video Server Resourceand Streaming Quality Over Best-Effort Network Authors: Hang Yu, Ee-Chien Chang, Wei Tsang Ooi Presented by: Xiaoyan Sun, Qianwen Geng

  2. Outline • Introduction & Motivation • Assumptions and Notations • Expected Recovered Frame Rate • Optimal Configurations • Experimental Results • Conclusion

  3. Outline • Introduction & Motivation • Assumptions and Notations • Expected Recovered Frame Rate • Optimal Configurations • Experimental Results • Conclusion

  4. Introduction • Adaption to changes in network conditions • Avoid network congestion • Share bandwidth w/ other connections • Sending rate based on (Server) • Bandwidth • Loss characteristics

  5. Motivation • Best-Effort network: packets are transported w/o any notion of resource reservation or priority. Network adaptation is often performed through rate adjustment in the following ways. • dynamically adapt its sending rate by transcoding the source video in real time Drawbacks: require substantial transcoding cost and sacrifice compression ratio or video quality • store multiple versions of the same video content, each with different bit rates Drawbacks: in low reference locality and can incur additional I/O cost, require a lot of storage • three categories • Adaptive encoding, stream is requantized on the fly • Switching among multiple pre-encoded streams, server based • Hierarchical encoding, receiver-based

  6. Video Compression SchemesMPEG

  7. Adaption Mechanisms • Trade off between the cost of transcoding and switching , the server can use a hybrid solution • store only several versions of the video content • and transcode in real-time (if needed) to meet the desired sending rate • Goals: • achieve good expected recovered frame rate • reduce the cost for switches among versions stored on the server • reduce the transcoding cost during the transmission

  8. Outline • Introduction & Motivation • Assumptions and Notations • Expected Recovered Frame Rate • Optimal Configurations • Experimental Results • Conclusion

  9. Assumptions and Notations • Network Conditions (b,p) • Bandwidth, obtained using the TCP equation • Probability of packet loss, obtained through receiver’s feedback using RTCP. • Sending Configurations (F, rI, rP, rB) • Fixed GOP length • {I,P,B,x} • (NI , NP , NB ) • FEC ratio rI, rP, rB • For example: (IxBPBBI,0 ,0, 0)

  10. Assumptions and Notations • Reducibility : • a configuration C1 can be reduced to another Configuration C 2 if any MPEG video encoded with C1 can be transcoded to C2 with negligible computational overhead. • this paper considers the following two ways of reduction as negligible computation: • Reducing the FEC ratio. (IBBPBBI,0.1,0.1,0)->(IBBPBBI,0.1,0.05,0) Throw away extra FEC • Dropping B-frames. For example, . (IBBPBBI,0,0,0)->(IxBPBBI,0,0,0)

  11. Assumptions and Notations • Seed Configurations (irreducible configuration) • C1 and C2 are the seeds of the set M={C4,C3,C6,C5,C7} • L- seed set

  12. Assumptions and Notations • Assigning Configuration to Network Condition: decide which configuration to use f(b,p)=C Lf-- range of an assignment ∽f--seed assignment if L ∽ f is irreducible • f(b,p) is sent, but we store video encoded with L ∽ f since ∽f(b,p) => f(b,p) • network condition changes(b0,p0) to (b1,p1), switching configuration from f(b0,p0) to f(b1,p1) by changing the transcoding operation

  13. Outline • Introduction & Motivation • Assumptions and Notations • Expected Recovered Frame Rate • Optimal Configurations • Experimental Results • Conclusion

  14. Expected Recovered Frame Rate • given a configuration C and network condition (b,p), the expected frame rate successfully recovered at the receiver’s end. Efr(C,b,p) • K – average number of packets sent in a video frame • r– the FEC ratio of the frame • Kr – the average number of FEC packets for the frame • N – total number of packets sent for a frame N=K+Kr • p – probability of the packet loss during transmission

  15. Expected Recovered Frame Rate • Under FEC coding scheme, the original K packets can be recovered if at least K packets (out of N ) are received • modeling the sending process as a series of Bernoulli trials, the probability that K packets are successfully recovered is given

  16. Expected Recovered Frame Rate • Expected number of I-frames recovered is given by • Expected number of P-frames recovered, , is thus given by • Expected number of B-frames recovered can be computed by expected reconstruct frame rate:Efr(C,b,p)=RI+RP+RB

  17. Outline • Introduction & Motivation • Assumptions and Notations • Expected Recovered Frame Rate • Optimal Configurations • Experimental Results • Conclusion

  18. Optimal Configurations • consider a range of network conditions, and show how to determine the seeds • (b,p)=>L(set of irreducible configurations) Model: b,p are sampled into discrete values b1 b2 b3… bn P1 x xx … x P2 x xxx (bi,pj) P3 x xxx Efr(f(bi,pj),bi,pj) Pn x xxx Main formulation(energy function):

  19. Optimal Configurations • Overall Expected Frame Rate • Pr(bi,pj), prob. the network bandwidth is (bi, pj) • Bw(C) size of the video encoding w/ config. C • K(C,b,p) best expected frame rate over all possible config. C’ that can be reduced from C • Assume network condition is uniformly distribute, i.e. Pr(bi,pj)=c

  20. Optimal Configurations • First to describe neighborhood • Dist(.,.) cost of switching between configurations • Dist(C1,C2)=1 if C1≠C2, otherwise 0 • Es is in fact the expected number of switches between configuration per unit time.

  21. Optimal Configurations • Finding the Optimal (1) • Mode I: Find the seed assignment that maximizes(1) • Mode II: Given an integer k, find the seed assignment that maximizes (1) subjected to the constraint | L ∽ f |<=k. • find the optimal local move based on swap. • First assign each network condition to a configuration • Next, iteratively, optimal local move is performed • a swap between a pair of configuration C1,C2 • initial assignment of the network condition is the C’ s.t. Efr(C’,b,p)is maximized.

  22. Optimal Configurations • Searching Space (for implementation) C=(F, rI, rP, rB) • Due to large number of possible frame patterns • For each combination of NI,NP and NB, only one frame pattern is considered. • Bound the anchor frames 1/3<=(NI+Np )/ (NI+NP + NB)<=1 • The total number of frame patterns considered in this experiment is reduced to 2977 for the test video • However, the number of configurations is much more. Only consider the configuration that includes maximum possible number of FEC bits.

  23. Outline • Introduction & Motivation • Assumptions and Notations • Expected Recovered Frame Rate • Optimal Configurations • Experimental Results • Conclusion

  24. Experimental Results

  25. Frame size • The size of each frame type: • Packets size: 1500 bytes. • Size of frame pattern: 30 f/group • interval for each frame: 1/30 second. • best possible expected frame rate: 30 fps.

  26. Network condition: • Bandwidth b starts from 120 to 300 step size: 10. • effective bandwidth: 1.44 to 3.6 Mbps (packet size: 1500 bytes) • Packet loss probability p starts from 0.01 to 0.1 step size: 0.01.

  27. Seed Configuration: • first reducibility graph R1 transcoding is achieved by dropping FEC packets. • second reducibility graph R2 transcoding is achieved by dropping FEC packets and/or B-frames. • Six different seed configurations are computed, using two graphs and four different weights (0, 3, 8, 30).

  28. Results and Analysis: • Perform experiments for R1, R2 and different weights (0, 3, 8, 30)

  29. Detailed Legend for the Result

  30. the optimal configuration and best frame rate for each network condition

  31. the expected overall frame rate using only the standard configuration

  32. R1, Weight = 3

  33. R1, Weight = 8

  34. Adjusting weight can change the size of the seed-set. This can be employed to find solutions for Mode II • More examples coming up……

  35. R2, Weight = 3

  36. R2, Weight = 30

  37. The advantage of using R2 • Provides a better approximation to the optimal configuration

  38. Comparing the last four with the standard configuration in the second one, choosing a better seed-set can achieve significant improvement in terms of expected frame rate. • the expected frame rate is not far from performing no configuration reduction, which is illustrated in the first figure.

  39. Next…… • show how the seed can improve the server performance • when adapting to changing network condition.

  40. Changing of Network Condition

  41. Now we will look up the processing time, I/O time and the storage issue

  42. real time transcoder

  43. Conclusion: • a server’s resource is an important factor in video streaming over a best-effort network, especially in applications where the server needs to serve many clients simultaneously • a real-time transcoder that always switches to the optimal configuration consumes significant computing power and, hence, is not suitable to serve multiple videos. • a server that precomputes all of the required configurations needs massive storage space, and its operating system will be overwhelmed with I/O operations during streaming. • uses a small number of configurations as the seeds, reduces storage and I/O cost significantly by decreasing the performance slightly

  44. THANK YOU!

More Related