VCGTA
The source code for "VCGTA: Viewport-aware Coalition Game Theory Adaptive Streaming for Live 360$^\circ$ Videos"
Install / Use
/learn @DrSheep89/VCGTAREADME
VCGTA: Viewport-aware Coalition Game Theory Adaptive Streaming for Live 360$^\circ$ Videos
Abstract
As the predominating internet application, live 360$^\circ$ video streaming faces challenges of high video quality and limited network bandwidth. Dynamic Adaptive Streaming over HTTP (DASH) and tiling techniques make the delivery of live 360$^\circ$ streaming more flexible. However, these fine-grained approaches may bring additional computational overhead and make bitrate allocation more complex. As live 360$^\circ$ streaming is susceptible to delays, lightweight adaptive streaming can be essential for delivery. In this work, we propose VCGTA, a lightweight adaptive bitrate approach that can significantly improve the user's quality of experience (QoE) and transmission efficiency for live 360$^\circ$ streaming. VCGTA can learn the user's viewing behavior by predicting the user's future viewport in real time so that the viewport area can be prioritized. Moreover, we innovatively model the tile-level bitrate allocation problem as a coalition game. Simulating the competitive behavior of tiles, VCGTA is capable of improving robustness under complex network conditions. In addition to certain QoE improvements, VCGTA can also significantly reduce computational complexity. A series of experiments based on the public dataset show that VCGTA outperforms the existing adaptive bitrate algorithms in terms of various QoE models and bandwidth consumption.
The Overview of VCGTA

Environment
- Windows 10
- PyTorch 1.8.1
- Python 3.7
- OpenCV and so on
Code Guide
-
Arguments.py : model hyperparameter settings
-
ConvLSTM.py :Convolutional LSTM cell and network
-
load_data.py :read relevant data from files
-
FoV.py :main code for online viewport prediction
-
get_fov.py :get results from viewport prediction
-
Net_sim.py :simulation environment
-
tileSet.py :store tile information
-
VCGTA.py :main ABR logic of VCGTA
-
abr_sim.py :main simulation function of ABR algorithm
:warning: Please be careful to adjust the path settings in Arguments.py and other script files before using the relevant code.
