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. 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. 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. 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)
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. 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