Transcript Slide 1
School of Computing Science Simon Fraser University Multiplexing of Variable Bitrate Scalable Video for Mobile Broadcast Networks Project Presentation Farid Molazem Cmpt 820 Fall 2010 Mohamed Hefeeda Outline High level description of the problem Overview of scalable video coding Formulation of the problem Problem solution Evaluation and results Mohamed Hefeeda High level description of the problem The problem we study here is broadcasting several variable bitrate video streams to a large number of mobile receivers while maximizing performance metrics of bandwidth utilization and energy saving Challenges - Variability in the bitrates of video streams - Small buffer sizes of mobile receivers - Energy constraints for mobile devices Mohamed Hefeeda Scalable Video Coding Scalable video coding - Temporal scalability - Spatial scalability - Quality scalability Mohamed Hefeeda Quality Scalability Quality scalability could be considered as a special case of spatial scalability We could have - Fine Grain Scalability - Coarse Grain Scalability - Medium Grain Scalability Mohamed Hefeeda Problem Formulation Problem: Broadcasting S scalable video streams from a base station to a large number of mobile receivers over a wireless medium Notation: - There are S video streams - Each frame video stream s has a base layer and Q s MGS layers - Each video stream has I frames - li , s ,k Indicates the size of layer k of frame i of stream s - Each stream is coded at F frame-per-second Base layer li , s ,k Frame i of stream s Mohamed Hefeeda Problem Formulation Bandwidth Utilization - The fraction of video frames received at the decoder before their decoding deadline S ns Energy Saving: s bj / R s 1 j 1 I/F - The fraction of time the receivers can put their wireless receivers into sleep - We use the average energy saving among all video streams ( s 1 s ) / S S Mohamed Hefeeda Problem Formulation The average quality of all transmitted frames is shown by - We use peak-signal-to-noise-ration (PSNR) as a quality metric PSNR 10 log S 10 ns ( MAX s hk s ui s 1 k 1 i g ks q 1 Mohamed Hefeeda ns k 1 ) MSE 2 I s bk i ,s ,q Problem Solution We solve the problem in two steps - First Step: • We solve the problem as if the video streams are not scalable We show that energy saving and bandwidth utilization are not independent » We control transmission by considering buffer level in the video streams » Define a parameter that tells us when to schedule a burst: 𝛼 × 𝐵𝑢𝑓𝑓𝑒𝑟 time Mohamed Hefeeda Problem Solution - Second Step: • Consider only base layer of video streams • Add burst to S2 until it reached threshold • Now we add back the quality layers as long as we have available bandwidth in our rescheduling window s1 s2 Below threshold Rescheduling window Mohamed Hefeeda time Problem Solution - Second Step: • Define a threshold for buffers, 𝜷 If the buffer level is less than 𝜷 × 𝑩𝒖𝒇𝒇𝒆𝒓 we start adjusting quality layers of video streams s1 s2 Below threshold Rescheduling window Mohamed Hefeeda time Problem Solution - Second Step: We have a number of frames Each frame has a number of quality layers Selecting each quality layer consumes some space and provides some quality value Which quality layers to choose? » 0-1 multiple choice knapsack » NP-Complete Mohamed Hefeeda Problem Solution - Second Step: Use an approximation algorithm Scale the table : 𝜃 = 𝑞𝑖,𝑗 = 𝜖 𝑄𝑚𝑎𝑥 𝑓𝑡𝑜𝑡𝑎𝑙 𝑞𝑖,𝑗 𝜃 Mohamed Hefeeda Evaluation Settings - We set the modulator to use 16-QAM (Quadrature Amplitude Modulation) - 10MHz radio channel - Overhead To=100ms Video streams - 16 video streams of different categories of: sport, tv game show, documentray, talk show and have very different visual characteristics - Bitrates ranging from 250 to 768 kbps - We created video streams with different MGS layers and the trace file for each stream using “BitStreamExtractorStatic” tool provided by JSVM - We used “PSNRStatic” to determine the PSNR value of each MGS layer of each video stream Mohamed Hefeeda Results Dropped Frame Mohamed Hefeeda Results Resulted Quality Mohamed Hefeeda Conclusions Having a small lookahead window, we can have an approximation algorithm to reduce dropped frame using quality scalability characteristics of scalable video streams Operator can adjust the chance of dropping frame by adjusting the threshold for buffer levels - Reducing the threshold lowers the chance of dropping frames at a cost of loosing some quality in video frames Mohamed Hefeeda Thanks You Mohamed Hefeeda