Overview:
This week, I read a paper ‘Adaptive 360-Degree Video Streaming using Layered Video Coding’, which is published on 2017 IEEE Virtual Reality (VR) by Afshin Taghavi Nasrabadi, Anahita Mahzari, Joseph D. Beshay and Ravi Prakash, the University of Texas at Dallas, Texas, U.S.A.
First of all, streaming 360-degree video is very challenging due to high bandwidth requirements. One solution is that only stream high quality video for the user viewport by viewport prediction, which need a small buffer to accurate the viewport prediction. This method maybe destructive for the QoE.
So, the author propose using layered encoding for 360-degree video to improve QoE by reducing the probability of video freezes and the latency of response to the user head movements. Moreover, this scheme reduces the storage requirements significantly and improves in-network cache performance.
Scalable Video Codec encoding in adaptive 360-degree video streaming.(a. using enhancement layers at the client allows more flexibility in the adaptation, b. the storage requirement on the server-side is reduced, and caching performance is improved.)
Method
1. Adaptive 360 video streaming by viewport prediction.
2. Adopt Cube map projection.
3. Each face of cube is sliced in the spatial domain into mxm(2×2) tiles.
4. Tiles are encoded in L(3) different quality levels according to the layered scheme of SVC. (base layer(one), enhancement layer(two))
5. The client always requests the base layer for all tiles.
6. Requests enhancement layers to provide a better quality in viewport (include the tiles where the user’s viewport may shift).
Advantage
1. Continuing playback (avoid playback freezing).
2. Reduces the storage requirement(SVC removes the redundancy between different levels).
3. Reduces the cost of updating the quality of already downloaded segments when the viewport changes suddenly or when the prediction.
is wrong.
I think the proposed method is very good for streaming 360-degree videos, and it is worth us learning. Furthermore, we should learn some knowledge about video/audio encoding.