1 / 15

Implementation of Video Layering in Multicast Transmission

Implementation of Video Layering in Multicast Transmission. L. Suniga, I Tabios, J. Ibabao Computer Networks Laboratory University of the Philippines. Problem. How to deliver scalable multicast video over networks with varying bandwidth constraints without compromising quality?.

gus
Download Presentation

Implementation of Video Layering in Multicast Transmission

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. Implementation of Video Layering in Multicast Transmission L. Suniga, I Tabios, J. Ibabao Computer Networks Laboratory University of the Philippines

  2. Problem • How to deliver scalable multicast video over networks with varying bandwidth constraints without compromising quality? 100 Mbps 10 Mbps 10 Mbps 100 Mbps University of the Philippines

  3. Problem • Congestion on the slow links • Limit data to fit slowest link  everybody suffers • Encode and send different files depending on connection speed • processor intensive • user must know link speed University of the Philippines

  4. Solution • Split video information over a number of layers and have clients receive only the layers they need 100 Mbps 10 Mbps 10 Mbps 100 Mbps University of the Philippines

  5. How do you layer video? • Use wavelet coding scheme • Multi-resolution analysis: time scale representation of a signal using digital filtering techniques • Discrete Wavelet Transform (DWT) • Decompose the signal to its course approximation and its detailed approximation • Half-band filters Upsampling / Downsampling University of the Philippines

  6. Discrete Wavelet Transform High-pass filter Low-pass filter University of the Philippines

  7. Software Design Server-side module Client-side module VB6, OpenGL Client Interface Module Video Compression Module Video Decompression Module C/C++ Transport Module C/C++ Rate Control Module Multicast Network University of the Philippines

  8. ONE FRAME Y Coeff Cr Coeff Cb Coeff HUFFMAN FILE Code Table Y base layer Y layer 1 Y layer 2 Y layer 3 Y layer 4 DWT FILE Y base layer Y layer 1 Y layer 2 Y layer 3 Y layer 4 Cr base layer Cr layer 1 Cr layer 2 Cr layer 3 Cr layer 4 Cr base layer Cr layer 1 Cr layer 2 Cr layer 3 Cr layer 4 Cb base layer Cb layer 1 Cb layer 2 Cb layer 3 Cb layer 4 Cb base layer Cb layer 1 Cb layer 2 Cb layer 3 Cb layer 4 Daubechies-6 Source Encoder (DWT) Huffman Encoder Raw video file Quantizer Transport (Per layer) (Per layer) Server Compression Module Get each frame Raw AVI DIB File Format Convert RGB frame to 4:2:2 YCrCb Frame For each coeff Build Huffman tree & code table Put result to DWT file 5-level FDWT, quantization thresholding Perform Huffman compression University of the Philippines

  9. HUFFMAN FILE Code Table Compressed Y base layer Compressed Y layer 1 Compressed Y layer 2 Compressed Y layer 3 Compressed Y layer 4 Compressed Cr base layer Compressed Cr layer 1 Compressed Cr layer 2 Compressed Cr layer 3 Compressed Cr layer 4 Compressed Cb base layer Compressed Cb layer 1 Compressed Cb layer 2 Compressed Cb layer 3 Compressed Cb layer 4 Server Transport Join base multicast group Any client? None At least one Send code table Send base layer L1 request? Open layer 1 multicast address & send layer 1 coefficients L2 request? Open layer 2 multicast address & send layer 2 coefficients L3 request? Open layer 3 multicast address & send layer 3 coefficients Open layer 4multicast address & send layer 4coefficients L4 request? University of the Philippines

  10. HUFFMAN FILE Code Table Compressed Y base layer Compressed Y layer 1 Compressed Y layer 2 Compressed Y layer 3 Compressed Y layer 4 Compressed Cr base layer Compressed Cr layer 1 Compressed Cr layer 2 Compressed Cr layer 3 Compressed Cr layer 4 Compressed Cb base layer Compressed Cb layer 1 Compressed Cb layer 2 Compressed Cb layer 3 Compressed Cb layer 4 Client Side Join base multicast group & connect to server Rebuild Huffman tree Receive code table IDWT YUV-to-RGB Receive base layer Add new layer Yes, probe failed Congestion? Drop new layer None, probe succesful University of the Philippines

  11. 10 Mbps 100 Mbps Testing Client1 Client2 University of the Philippines

  12. 1 2 3 4 5 6 7 8 9 Results Layer 4 Layer 3 Layer 2 Layer 1 Base Time (sec) 10 Client1 (10 Mbps) Client2 (100 Mbps) University of the Philippines

  13. Problems Encountered • Asymmetrical system • Off-line compression, real-time decompression • Slow display graphics card &processor specific • “Live” testing with more clients • Not that easy to implement multi-threading University of the Philippines

  14. Recommendations • Develop a faster codec to enable smoother playback • Perform inter-frame techniques to achieve better compression • Experiment on the optimum “probe window” length (dynamic or fixed?) University of the Philippines

  15. Thank you! • Robe Polikar’s Wavelet Tutorialhttp://engineering.rowan.edu/%7polikar/wavelets/Wtutorial.html • www.upd.edu.ph/~cnl/ • jhoanna@eee.upd.edu.ph • Based on the paper “Highly-Scalable Wavelet-Base Video Codec for Low Bit Rate Environment” Tham, Ranganath, Kassim. IEEE Journal on Selected Areas in Communications, January 1998. University of the Philippines

More Related