Adaptive Encoding of Zoomable Video Streams based on User Access Pattern
Ngo Quang Minh Khiem Guntur Ravindra Wei Tsang Ooi National University of Singapore
Video Streams based on User Access Pattern Ngo Quang Minh Khiem - - PowerPoint PPT Presentation
Adaptive Encoding of Zoomable Video Streams based on User Access Pattern Ngo Quang Minh Khiem Guntur Ravindra Wei Tsang Ooi National University of Singapore Zoomable Video Zoomable Video with Bitstream Switching (x,y,w,h) Server Client
Ngo Quang Minh Khiem Guntur Ravindra Wei Tsang Ooi National University of Singapore
Server Client (x,y,w,h)
GOAL: Minimize bandwidth to transmit RoIs
Encode video once Support any RoI cropping
Tiled Streaming (TS) Monolithic Streaming (MS)
Tiled Streaming One tile = k x k macroblocks Encode each tile as independantly decodable video streams Tiles overlapping with the RoI are transmitted
Monolithic Streaming Data outside RoI need for decoding RoI Single monolithic video
TS
Bigger tile More waste More bits Smaller tile Less compression More bits
Longer MV More dependency More bits Shorter MV Less compression More bits
MS
Reduce bandwidth further, given RoI access statistics?
Given RoI access statistics, adapt the encoding parameters such that the expected bandwidth E needed to transmit a RoI is minimized
R r
c(r): compressed size of RoI r p(r): access probability of RoI r
Log user selection of RoI (Online) Adaptive Encoded Video RoI Access Pattern Encoded Video
Adaptive Encoding
Adaptive Tiling (AT) Monolithic Streaming with RoI-aware Coding (MS-PB)
Given RoI access pattern, tile the video such that E is minimized
T t
c(t): compressed size of tile t p(t): access probability of tile t
Allowing tiles of different sizes can reduce bandwidth
Regular tiling with 2x2 tiles Adaptive tiling 2 4 1 3 RoI accessed by most users Merge tiles 1,2,3 and 4
bandwidth is reduced
bandwidth is reduced
t1
c(t1) = 9 p(t1) = 0.8
t2
c(t2) = 6 p(t2) = 0.8
t12
c(t12) = 11 p(t12) = 1
12 12 2 2 1 1
Resulting tile map RoI Access Pattern
P(A), P(B): sending A, B P(AB) : A and B in same RoI P(A) – P(AB): sending A independent of B R2 R1 B A
Motion Vector Spread after MS-PB
Rush-Hour (500 frames) Bball (200 frames) Rainbow (350 frames) Tractor (688 frames)
framework
0.5 1 1.5 2 2.5 3 3.5 4 Bball Rainbow
Expected Data Rate (Mbps) Test Video
Expected Data Rate for Different Videos without B-Frames
PerRoI MS-PB MS AT TS4x4
0.5 1 1.5 2 2.5 3 3.5 4 4.5 Bball Rainbow
Expected Data Rate (Mbps) Test Video
Expected Data Rate for Different Videos with 2 B-Frames
PerRoI MS-PB MS AT TS4x4
20 40 60 80 100 120 140 160 Bball Rainbow
File Size (MB) Test Video
Compressed Video File Size with 2 B-Frames
PerRoI MS-PB MS AT TS16x16 20 40 60 80 100 120 140 Bball Rainbow
File Size (MB) Test Video
Compressed Video File Size without B-Frames
PerRoI MS-PB MS AT TS16x16
Motion Vector Spread without B-frame Motion Vector Spread with 2 B-frame Without B-frame
MS-PB < MS
With B-frame
MS-PB ≈ MS
user access patterns
video with wide spread of dependency