streaming video n.
Skip this Video
Loading SlideShow in 5 Seconds..
Streaming Video PowerPoint Presentation
Download Presentation
Streaming Video

Loading in 2 Seconds...

play fullscreen
1 / 23

Streaming Video - PowerPoint PPT Presentation

Download Presentation
Streaming Video
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. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Streaming Video Gabriel Nell UC Berkeley

  2. Outline • Scalable MPEG-4 video • Layered coding method • Integrated transport-decoder buffer model • RAP streaming congestion control • Quality adaptation over RAP • Prefetching VBR prerecorded video

  3. Streaming Video Design Considerations • Stream must adapt to widely varying Internet link speeds and client processing power • Server should be low complexity • Client-driven flow control and lost packet recovery

  4. Layered Video • Prediction-based base layer • DCT motion-compensated • Carries minimally-acceptable quality video • Fine-granular enhancement layer • Can be decoded progressively • Fully utilizes available bandwidth

  5. Enhancement Layer Details • Highly efficient wavelet-based compression • Organize wavelet coefficients into spatial orientation trees • Decaying spectrum hypothesis: energies of wavelet coefficients decay as they move from the root • Allows pruning to select most important coefficients

  6. Enhancement Layer Details • Wavelet coefficient organization (cont’d) • “Significant” coefficients are identified, most significant bit transmitted • Second MSB for each significant coefficient transmitted, then third, etc. • After complete information about significant coefficients transmitted, change threshold and repeat

  7. Enhancement Layer Performance • Simulation shows PSNR improvement proportional to amount of enhancement layer received

  8. PSNR at Different Rates

  9. Integrated Transport-Decoder • Receiver buffer model • Transport delay parameters • Packet loss, jitter, etc. • Video encoder buffer constraints • Min and max buffer bounds

  10. Integrated Transport-Decoder • Buffer divided into temporal segments • Buffer size optimized to accommodate • Start-up delay • Retransmission delay • Flow control regulated to match bottleneck link • Retransmitted packets have higher priority than enhancement layer packets

  11. ITD Performance • Tested 15kbps video over 33.6kbps modem locally and across the country • Performance measured by number of retransmission requests, failures, successes • Performance was good, proportional to start-up delay (3-7 seconds)

  12. RAP Congestion Control • RAP: Rate Adaptation Protocol • Motivation: make realtime streaming applications behave properly; “TCP-friendly”

  13. RAP Protocol • Source sends data packets with sequence numbers • Receiver acknowledges packets • Congestion detection • Indicated by lost packets • Variable such as RTT calculated similar to the way TCP calculates them

  14. RAP Protocol • Sender rate-control decision function • If no congestion detected, periodically increase transmission rate • If congestion detected, immediately decrease transmission rate • Additional Features • Clustered loss detection • Fine-grain rate adaptation

  15. RAP Performance • Simulation shows TCP-friendliness • Performance is a little different from TCP • TCP more sensitive to number of outstanding packets • RAP more aggressive due to clustered loss detection and fine-grain rate adaptation

  16. Quality Adaptation for Congestion Control • Motivation: single video server streaming on demand to heterogeneous clients • Quality Adaptation: adjust the quality of the stream during playback to maximize quality given bandwidth • Use hierarchical (layered) approach

  17. Layered Quality Adaptation • Coarse-grain mechanism for adding and removing layers • Adding a layer • When available bandwidth is greater than existing consumption plus the new layer • When the receiver has sufficient buffer space available • Layers dropped immediately on congestion

  18. Layered Quality Adaptation • Inter-layer buffer allocation • Keep track of buffered data, send less to clients with data already buffered • Provide more buffering for lower layers for increased protection • Use smoothing • If there is bandwidth for 2.9 layers, send 3 layers 90% of the time • Performance • Depending on smoothing parameters, buffer allocation efficiency ranged from 96% to 99.99% in simulation

  19. Prefetching VBR Prerecorded Video • Prerecorded video • Size (in bits) for every frame is known in advance • Frames can be prefetched into memory • Nature of VBR means there will be periods of link underutilization • Collaborative protocol manages buffers of all clients

  20. JSQ Prefetch • JSQ: join shortest queue • Measure buffer length in terms of number of frames rather than bits • Balance number of frames across all prefetch buffers • At each time interval, the server iteratively adds a frame to the buffer with the smallest number of frames • Allows near-100% link utilization, quick recovery from pauses and time jumps

  21. Decentralized Prefetching • Multiple video servers • Window-based flow control • Dynamic send window: increase send window to clients with depleted buffers

  22. Performance • Allows near-100% link utilization, with low probability of buffer starvation

  23. Questions?