Published on

Published in: Engineering, Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide


  1. 1. Managing VBR Videos
  2. 2. The VBR Problem • Constant quality • Burstiness over multiple time scales • Difference within and between scenes • Frame structure of encoding algorithm • Consider the examples in the paper “ Statistical Properties of MPEG Video Traffic and their Impact on Traff ” – The frame and the GOP sizes can be approximated by the Gamma or LogNormal distributions – Long term dependencies exist between frames: Hurst exponents range from 0.7 to 1 • Hurst exponent: (R/S)N = (cN)H • R: range of cumulative deviation from mean, S: S.D.
  3. 3. Transferring VBR Video • First approach • Server, network and client provision for peak rates • Most of the time resources will be underutilized • Second approach • Model the traffic by multiplexing the VBR video with other data flowing over the network • Come up with an “effective bandwidth” • Third approach • Use prior knowledge of the video content • Precompute a transmission schedule to • Minimize bit rate • Avoid overflow or underflow of client buffers Bandwidth smoothing
  4. 4. Bandwidth Smoothing Algorithms • Primary goal • Reduce the peak transmission rate • Transmit large frames to the client playback buffer in advance of each burst • Optimization criteria • Minimize number of changes in transmission rate • Minimize variability of bandwidth requirement • Minimize client buffer utilization • Minimize number of ON-OFF segments in an ON-OFF transmission model • Change transmission rate only at periodic intervals • Minimize general cost metrics
  5. 5. Overflow and Underflow • The video consists of n frames, where frame i needs fi bytes of storage • To permit continuity, the server should always avoid underflow, by serving enough data • By frame k the client consumes at least L(k) bytes, where • L(k)= ∑i=0..k fi • The upper bound of data received will be • U(k)=L(k)+b, where b is the playback buffer size • Break up the transmission into m linear segments such that during the run of the j-th segment the transmission rate is constant at some rate rj • During any run the number of bytes must be between L(k) and U(k)
  6. 6. Overflow and Underflow bytes frame number m=3
  7. 7. Selecting Long Trajectories • Starting at a point for run j+1, • the trajectory should run until it reaches the upper or the lower bound curve • At that frontier it should change the slope • Accepts client buffer size as input parameter • Algorithm MCBA (min. changes bandwidth allocation) • Minimize m and the peak bandwidth requirement • Polyline sliding-stretching algorithm • Linear complexity • Algorithm MVBA (min. variability bandwidth allocation) • Minimizes variance in rate requirements • Starting from leftmost point in the frontier, gradually alters rate requirements • Uses larger number of small bandwidth changes
  8. 8. Smoothing at Peak Rate • RCBS (rate constrained bandwidth smoothing) • Given a maximum bandwidth constraint r, produces a schedule with smallest buffer utilization • Transmit frames as late as possible • Start with the last frame of the movie • If a frame exceeds the rate constraint, the frame rate is adjusted to the maximum allowed rate and transmitted earlier • Small small buffer size follows the actual data rate closely • Operates with MCBA/MVBA algorithm because they produce the value of r