QoE-driven Coupled Uplink and Downlink Rate Adaptation for 360-degree Video Live Streaming
QQoE-driven Coupled Uplink and Downlink RateAdaptation for 360-degree Video Live Streaming
Jie Li, Ransheng Feng, Zhi Liu,
Senior Member, IEEE,
Wei Sun, Qiyue Li,
Member, IEEE
Abstract —360-degree video provides an immersive 360-degreeviewing experience and has been widely used in many areas.The 360-degree video live streaming systems involve capturing,compression, uplink (camera to video server) and downlink(video server to user) transmissions. However, few studies havejointly investigated such complex systems, especially the rateadaptation for the coupled uplink and downlink in the 360-degree video streaming under limited bandwidth constraints.In this letter, we propose a quality of experience (QoE)-driven360-degree video live streaming system, in which a video serverperforms rate adaptation based on the uplink and downlinkbandwidths and information concerning each user’s real-timefield-of-view (FOV). We formulate it as a nonlinear integerprogramming problem and propose an algorithm, which com-bines the Karush-Kuhn-Tucker (KKT) condition and branchand bound method, to solve it. The numerical results showthat the proposed optimization model can improve users’ QoEsignificantly in comparison with other baseline schemes.
Index Terms —Virtual reality, 360-degree video, video stream-ing, quality of experience, rate adaptation, Karush-Kuhn-Tuckercondition, uplink.
I. I
NTRODUCTION
Manuscript received August 28, 2019; revised December 10, 2019; ac-cepted January 03, 2020. This research is supported in part by NationalNatural Science Foundation of China, Grant No. 51877060, the FundamentalResearch Funds for the Central Universities, Grant No. JZ2019HGTB0089and PA2019GDQT0006, the State Grid Science and Technology Project(Research and application of key Technologies for integrated substationintelligent operation and maintenance based on the fusion of heterogeneousnetwork and heterogeneous data). The work of Zhi Liu was supported byJSPS KAKENHI Grants 18K18036, 19H04092, and the TelecommunicationsAdvancement Foundation Research Fund. (Corresponding author: Qiyue Li.)Jie Li and Ransheng Feng are with School of Computer and Infor-mation, Hefei University of Technology, Hefei, 23009, China. e-mail: [email protected], [email protected] Liu is with Department of Mathematical and Systems Engineering,Shizuoka University, Japan. e-mail: [email protected] Sun and Qiyue Li are with School of Electrical Engineeringand Automation, Hefei University of Technology Hefei, 23009, China. e-mail:[email protected], [email protected] (cid:13) [2]. In addition, there has been a recent trend toward high-quality 360-degree video content creation using 3D panoramicVR cameras. Compared to the traditional live streaming, 360-degree video live streaming is considerably more challengingdue to its panoramic nature [3], and it has more stringent QoErequirements to prevent motion sickness.Many published works have investigated 360-degree videostreaming [4], [5], [6], [7], [8]. For example, the authors of[5] designed a rate adaptation algorithm that can maximizethe defined QoE metrics for 360-degree video streaming.Given the FOV and bandwidth estimation, Xie et al. [6]proposed a probabilistic tile-based adaptive 360-degree videostreaming system, named , which combinedviewport adaptation and rate adaptation to solve the QoE-driven optimization problem. In [7], the authors presented
Vortex , a live VR video streaming system that works in acomputationally and bandwidth-efficient manner.In 360-degree video live streaming applications, a capturingdevice is used to record scene and transmit the capturedvideo to the server in real time. Then, multiple users canaccess and watch the 360-degree video with their HMDs bydownloading the coresponding video content from the server.Obviously, under a limited bandwidth constraint, the uplink(VR cameras to video server) and downlink rate (video serverto end users) should be carefully selected to improve theviewing experiences.In this paper, we formulate this transmission problem asa nonlinear integer programming problem. To solve this, wepropose an optimal algorithm that combines the KKT condi-tion and the branch and bound method. Extensive simulationsare conducted based on the real-world LTE network traces,and the simulation results show that the proposed solution cansignificantly improve users’ QoE in comparison with otherbaseline schemes. To the best of our knowledge, this is thefirst research jointly considering rate adaptation for coupleduplink and downlink in 360-degree video streaming system.II. S
YSTEM O VERVIEW
In this section, we present our 360-degree video livestreaming system, which jointly allocates uplink and downlinkwireless resources to maximize the overall QoE.
A. System Model
We consider a scenario where multiple users are watching360-degree video live streaming, as illustrated in Fig. 1. C cameras are installed in the 360-degree video capturingdevice, and each camera can record high-quality 2D video. a r X i v : . [ c s . MM ] J a n ig. 1: A typical scenario of a 360-degree video live streamingsystem.Constrained by the limited wireless uplink bandwidth, therecorded C videos may not be transmitted to video server withthe highest quality. Assuming that each camera is capableof encoding the original video into several versions withdifferent bitrates, the video with the most appropriate bitrateshould be selected and uploaded to the video server. Videois partitioned into tiles at the server and the correspondingtiles for user’s FoV are transmitted to the user from theserver. The downlink transmission is also limited by thebandwidth. Then, one representation is selected for every tileand transmitted to the user, according to the correspondingFOV and channel status under the assumption that suchinformation is transmitted to the video server in real time.Obviously, for each tile, the best quality received by a usercannot exceed the quality of the video uploaded by thecorresponding camera, where the original video is captured.Thus, this scenario can be modeled as a typical coupled videotransmission problem.In this paper, we consider this coupled uplink and downlinktransmission system to maximize the QoE of all users throughrate adaptation. The architecture is shown in Fig. 2. Thesystem consists of four parts: a 360-degree video capturingdevice with C cameras, processing modules on both the serverside and the client, and the end users wearing HMDs. Eachcamera can encode the captured video into different videoqualities, expressed as different constant bitrates, but only onevideo bitrate can be uploaded to the video server.The server side includes two modules: the QoE-driven up-link processing module and the downlink processing module.The uplink processing module is responsible for obtaining araw 360-degree video by stitching the C uploaded videos.The downlink processing module selects the appropriatevideo quality for each tile based on the FOVs and channelinformation from all the users. The system workflow is asfollows: the uplink processing module selects a bitrate levelfor each camera. Then, the C videos with different qualitiesare stitched and projected into a panoramic video. Next,the downlink processing module divides the raw panoramicvideo into tiles and encodes each tile into different qualityrepresentations. With the help of feedback information fromthe client side, the downlink processing module can determine Server
QoE-driven for uplink module
C 2D videos
QoE-driven for downlink module
Encoding each tile into different quality representationsQuality selection of each tile Communication Interface
Wireless downlink channel
Client
ProjectingInteraction Interface
Feedback information [users real-time FoV, downlink channel information]
Encoded tiles
Videos generated by cameras
Users real-time FoV
C camerasN users
QoE optimal VR video
Control signal [Bitrate selection for each camera]Tiles selectionStitching Projecting VR videoMCS selection for each tile
Wireless uplink channel
TilingDecoding Rendering Display
Fig. 2: QoE driven coupled uplink and downlink 360-degreevideo transmission system.the range of tiles to be transmitted and select the appropriatequality level for each tile. Finally, all the selected tiles aretransmitted through the downlink channel to maximize theusers’ QoE.At the client side, as the tiles are received from the server,they are decoded, projected, rendered and displayed in theHMD. In addition, the client side sends the user’s FOV andchannel information in real time to the video server througheach user’s uplink feedback channel.
B. Problem Formulation
Suppose the system includes N users (indexed by n ).The evenly deployed C cameras form a 360-degree videocapturing system. Each camera c can record and generatevideos at up to D (cid:48) bitrate levels (indexed by d (cid:48) ). The bitrateof camera c uploaded with bitrate level d (cid:48) is denoted by λ ULc,d (cid:48) . The total bandwidth of the uplink channel is B UL .When the videos generated by the C cameras are uploadedto the server, the server processes them to produce a 360-degree video. Prior to downlink transmission, the 360-degreevideo is divided into T tiles (indexed by t ), and each tileis encoded into D different representations (indexed by d )at different quality levels, which is the same as how theHTTP DASH processes the video. We denote the bitratesof tile t with representation d in GOP k by λ DLt,d,k . Asaforementioned, the quality of each video d in the downlinkcannot exceed the quality of the corresponding video d (cid:48) inthe uplink transmission. Assume that the bandwidth of the-th GOP in the downlink channel is B DLk . For user n , T nF oV denotes the tiles covered by his FOV. Then user n ’s expectedQoE can be defined as follows: QoE n = (cid:80) ∀ t ∈ T nFOV (cid:80) ∀ d ∈ D (cid:80) ∀ k ∈ K q (cid:0) λ DLt,d,k · χ DLt,d,k (cid:1) − α × (cid:80) ∀ t ∈ T nFOV (cid:80) ∀ d ∈ D (cid:80) ∀ k ∈ K I (cid:0) λ DLt,d,k · χ DLt,d,k > B
DLk (cid:1) · T k − β × (cid:80) ∀ t ∈ T nFOV (cid:80) ∀ d ∈ D (cid:80) ∀ k ∈ K (cid:0) q (cid:0) λ DLt,d,k +1 · χ DLt,d,k +1 (cid:1) − q (cid:0) λ DLt,d,k · χ DLt,d,k (cid:1)(cid:1) , (1)where λ DLt,d,k denotes the bitrate of tile t with bitrate level d in the k -th GOP, and DL means “downlink” channel. χ DLt,d,k is a binary variable, which equals 1 if tile t is transmittedwith bitrate level d in the k -th GOP, and 0 otherwise.Function q is a mapping function, which maps the bitrateof tile t to the quality perceived by the user. The form offunction q is the logarithmic of the received bitrate. Thesecond term of this equation is used to show the impact ofstalls. We assume stall will occur when the bandwidth forthe k -th GOP is less than the video bitrate, and stall timeis approximately equal to the duration of the k -th GOP . I (cid:16) λ DLt,d,k · χ DLt,d,k > B
DLk (cid:17) is an indicator function, and itsvalue is 1 only when λ DLt,d,k · χ DLt,d,k > B
DLk , otherwise0. This means that in one GOP, when the video bitrateis greater than the bandwidth, the stalls will occur. T k isthe duration of the k -th GOP. B DLk is the bandwidth whentransmitting the k -th GOP. Thus we can use the average ofthe bandwidth during T k as the value of B DLk . In addition, (cid:16) q (cid:16) λ DLt,d,k +1 · χ DLt,d,k +1 (cid:17) − q (cid:16) λ DLt,d,k · χ DLt,d,k (cid:17)(cid:17) considers thequality switches between the consequent GOPs. Similarly, λ DLt,d,k +1 denotes the bitrate of tile t with bitrate level d in the k + 1 -th GOP. χ DLt,d,k +1 is also a binary variable, and equals1 if tile t is transmitted with bitrate level d in the k + 1 -th GOP, and 0 otherwise. Finally, constants α and β are thenon-negative weight parameters to balance the three factors.With this QoE model, our uplink and downlink optimizationproblem is defined as follows:problem 1: max (cid:88) ∀ n ∈ N QoE n (2)s.t. (cid:88) ∀ d (cid:48) ∈ D (cid:48) χ ULc,d (cid:48) = 1 , ∀ c ∈ C (3) (cid:88) ∀ d (cid:48) ∈ D (cid:48) (cid:88) ∀ c ∈ C λ ULc,d (cid:48) · χ ULc,d (cid:48) ≤ B UL (4) (cid:88) ∀ d ∈ D χ DLt,d,k = 1 , ∀ t ∈ T nF OV , ∀ k ∈ K (5) In a practical system, due to the existence of the playback buffer, stallsare related to the transmission rate, the playback speed and buffer status.Once the buffer drains, a stall will occur. In this manuscript, to simplify theformulation, we assume when the bandwidth value in a GOP is less than thevideo bitrate, stall will occur. How to more previously model this is left asthe future work. (cid:88) ∀ t ∈ T nFOV (cid:88) ∀ d ∈ D (cid:88) ∀ k ∈ K λ DLt,d,k · χ DLt,d,k ≤ (cid:88) ∀ k ∈ K B DLk (6) (cid:88) ∀ d ∈ D (cid:88) ∀ k ∈ K λ DLt,d,k · χ DLt,d,k ≤ T (cid:88) ∀ d (cid:48) ∈ D (cid:48) λ UIc,d (cid:48) · χ ULc,d (cid:48) , ∀ c ∈ C, ∀ t ∈ T nF OV (7)where χ ULc,d (cid:48) and χ DLt,d,k are the optimization variables.
U L stands for ”uplink”. χ ULc,d (cid:48) is a binary variable, which equals1 when the video from camera c is transmitted with bitratelevel d (cid:48) and 0 otherwise. χ DLt,d,k is also binary variable (sameas in equation (1)), which equals 1 if tile t is transmitted withrepresentation d in k -th GOP and 0 otherwise. λ ULc,d (cid:48) denotesthe bitrate of camera c uploaded at bitrate level d (cid:48) . Constraints(3)-(4) apply to the uplink. Constraint (3) indicates that thevideo of camera c can be uploaded with only one quality level.The total bitrate of all the uploaded videos cannot exceed thetotal bandwidth of the uplink as specified in Constraint (4).Constraints (5)-(6) are the downlink constraints. Constraint(5) ensures that only one representation can be selectedfor tile t in k-th GOP, which is transmitted to the clientside. Constraint (6) ensures that the sum of the tile bitratescannot exceed the total bandwidth of the downlink channel.Constraint (7) discusses the coupled uplink and downlinkand ensures that the quality levels of tiles in the downlinkcannot exceed the quality level of the videos generated bythe corresponding camera and transmitted in the uplink.III. Q O E DRIVEN O PTIMAL R ATE A DAPTATION A LGORITHM
In this section, we introduce the optimal solution of theabove problem, which is a nonlinear integer programmingproblem and can be proven to be NP-hard. We firstly ap-proximate the indicator function in the QoE model with alogarithmic function, so that the QoE function becomes acontinuous function. Then, because the constraint in problem1 satisfies the linear constraint qualification, we can use theKKT condition to solve the relaxation problem of problem1. By using the logarithmic function to approximate theindicator function in the QoE model and relaxing the integervariables χ ULc,d (cid:48) and χ DLt,d,m to continuous variables, the relaxedproblem can be solved by applying the KKT conditions andthe Lagrangian function. Then, we can obtain the optimalvalue of the original problem.
A. KKT condition for the relaxed continuous problem
First, we approximate the indicator function in the QoEmodel with a logarithmic function and relax χ ULc,d (cid:48) and χ DLt,d,k to continuous variables. Then, the original problem 1 can besolved by KKT conditions. The Lagrangian function of theproblem is as follows Eq. (8): L ( χ ULc,d (cid:48) , χ
DLt,d,k , λ, µ ) = − (cid:88) ∀ n ∈ N QoE n + λ h ( χ DLc,d (cid:48) )+ λ h ( χ DLt,d,k ) + µ g ( χ DLc,d (cid:48) )+ µ g ( χ DLt,d,k ) + µ g ( χ DLc,d (cid:48) , χ
DLt,d,k ) , (8)here h ( χ DLc,d (cid:48) ) = (cid:88) ∀ d (cid:48) ∈ D (cid:48) χ ULc,d (cid:48) − (9) h ( χ DLt,d,k ) = (cid:88) ∀ d ∈ D χ DLt,d,k − (10) g ( χ DLc,d (cid:48) ) = (cid:88) ∀ d (cid:48) ∈ D (cid:48) (cid:88) ∀ c ∈ C χ ULc,d (cid:48) · λ ULc,d (cid:48) − BUL (11) g ( χ DLt,d,k ) = (cid:88) ∀ t ∈ T nFOV (cid:88) ∀ d ∈ D (cid:88) ∀ k ∈ K λ DLt,d,k · χ DLt,d,k − (cid:88) ∀ k ∈ K B DLk (12) g ( χ DLc,d (cid:48) , χ
DLt,d,k ) = (cid:88) ∀ d ∈ D (cid:88) ∀ k ∈ K λ DLt,d,k · χ DLt,d,k − T (cid:88) ∀ d (cid:48) ∈ D (cid:48) λ UIc,d (cid:48) · χ ULc,d (cid:48) (13)Thus, we can obtain the relevant KKT conditions: ∂L ( χ ULc,d (cid:48) , χ
DLt,d,k , λ, µ ) ∂χ ULc,d (cid:48) = λ ∂h ( χ DLc,d (cid:48) ) ∂χ ULc,d (cid:48) + µ + µ ∂g ( χ DLc,d (cid:48) , χ
DLt,d,k ) ∂χ ULc,d (cid:48) = (14) ∂L ( χ ULc,d (cid:48) , χ
DLt,d,k , λ, µ ) ∂χ DLt,d,k = − (cid:88) ∀ n ∈ N ∂QoE n ∂χ DLt,d,k + λ ∂h ( χ DLt,d,k ) ∂χ DLt,d,k + µ ∂g ( χ DLt,d,k ) ∂χ DLt,d,k + µ ∂g ( χ DLc,d (cid:48) , χ
DLt,d,k ) ∂χ DLt,d,k =0 (15) g ( χ DLc,d (cid:48) ) (cid:54) , g ( χ DLt,d,k ) (cid:54) , g ( χ DLc,d (cid:48) , χ
DLt,d,k ) (cid:54) (16) h ( χ DLc,d (cid:48) ) = 0, h ( χ DLt,d,k ) = (17) λ , λ (cid:54) = 0 , µ , µ , µ (cid:62) (18) µ g ( χ DLc,d (cid:48) ) = , µ g ( ϕ DLt,d,k ) = 0 , µ g ( χ DLc,d (cid:48) , χ
DLt,d,k ) = 0 . (19)By solving equations (14)-(19), which are associated withthe KKT condition, we can derive the optimal solution ofthe relaxed nonlinear problem. Next, we use the branch andbound method to find the solution of the original binaryprogramming problem. B. Branch and bound Method
The branch and bound method designed to solve problem1, as shown in Table I. The initial inputs are χ relax and Z relax , where χ relax is the solution to the correspondingrelaxation problem solved by the KKT condition, and Z relax indicates the corresponding optimal objective function value.The outputs are the 0–1 variable solution χ − and thecorresponding optimal objective function value Z − . TABLE I: Branch and Bound Algorithm for Solving Problem1. Input:
The optimal solution of the relaxation problem χ relax ,the optimal objective function value of the relaxation problem Z relax ,and a random value in the range (0,1) (cid:15) . Output:
The optimal solution of problem 1 χ − ,and the optimal objective function value of problem 1 Z − . Initial: k = 0 , L = 0 , U = Z relax Choose any solution χ j that does not meet the 0–1 constraints from χ relax , χ j ∈ (0 , . IF < χ j < (cid:15) Add the constraint χ j = 0 to Problem P-1 to form subproblem I. ELSE
Add the constraint χ j = 1 to Problem P-1 to form subproblem II. END IF k++,find the solutions to the relaxation problems in subproblems I and II(denoted as χ k ) where the optimal objective function value is Z k .Find the maximum value of the optimal objective function and use it as anew upper bound. Update L = max { Z k } , χ k ∈ { , } Then, find the maximum value of the objective function from the branch that meetsthe 0-1 condition as a new lower bound, and update L = max { Z k } , χ k ∈ { , } . IF Z k < L Cut off the bound
ELSE IF Z k > L and χ k ∈ { , } Go to step 2
ELSE
The optimal solution of problem 1 has been found, χ − = χ k and Z − = Z k (a) Snapshot of the sixoriginal videos. (b) Tiled panoramic 360-degree video synthesizedfrom 6 original videos.Fig. 3: Illustration of the video sourceIV. P ERFORMANCE E VALUATION
We conduct experiments to verify the performance of theproposed QoE-driven 360-degree video live streaming system.
A. Simulation Setup
During the simulation, we select 6 videos captured by anInsta 360 Pro2 panoramic camera as the original video at theuplink. The highest resolution of each video is × .The video duration is 35s, and the frame rate is 30 fps. Figure.3 (a) shows a snapshot of the six original videos. Then, we usethe high efficiency video coding (HEVC) method and constantbitrate (CBR) as a bitrate control technique to compress eachoriginal video, with the bitrate representations of each videobeing { } Mbps. We use AVP software (KolorAutopano Video Pro) to complete the synthesis and stitch theVR videos together. Subsequently, the panoramic VR videois divided into 16 tiles, each tile covers × degrees.We assume that the video server can provide 4 differentbitrate representations for each tile at constant bitrates { } Mbps. Figure. 3(b) shows the panoramic VRideo synthesized from the 6 original videos, which is thendivided into 16 tiles. At the client side, we assume thatthere are 100 users wearing HTC Vive as the HDM device.The users are located at random distances from the basestation, and they can request and watch 360-degree videos.The channel information can be calculated based on the fixedtransmission power of the base station. During the simulation,we assume that each users’ FOV ( × degrees) israndomly distributed in the 360-degree video and their FOVinformation is transmitted to the video server in real time. B. Simulation Results
To better verify the performance of the proposed schemeand make the simulation more realistic, we have con-ducted simulations using the real-world network traces [9]with/without the perfect knowledge of future network con-ditions (i.e. bandwidth prediction is 100% correct or par-tially correct.). We use two baseline schemes to show theadvantages of the proposed scheme. In the first method(denoted as Algorithm 2), the uplink bandwidth resourcesare evenly distributed among the different cameras, and thedownlink uses the same adaptive allocation algorithm asour method. In the second method (denoted as Algorithm3), uplink bandwidth resources are evenly distributed amongthe different cameras, and downlink bandwidth resources areequally distributed to different tiles. We first consider the casewith perfect knowledge of future network condition and usethe bandwidth value of each GOP as input for simulation.Then we consider the case with imperfect knowledge offuture network conditions. According to the state-of-the-artbandwidth prediction scheme [10], we add a Gaussian randomnoise, which has mean of 0 and variance of 1, to the LTEtrace (with multiplying 30% ) to simulate the prediction error.We then perform simulation experiments using the predictedbandwidth (which differs from the real bandwidth) as theinput for the optimization, and real the correct bandwidth tocalculate the value of the objective function.The simulation results of both cases are shown in TableII. From the simulation results, we can observe that theproposed algorithm can achieve a higher QoE value with allthe three LTE traces. This is because we not only achieve theintegration of uplink and downlink resource allocation butalso efficiently allocate the resources. We can also observethat the larger bandwidth results in larger QoE value bycomparing the performances with different traces. The QoEvalue drops due to the prediction error. This is because ifthe predicted bandwidth value after adding Gaussian noiseis larger than the real bandwidth value, the real bandwidthmay not be able to satisfy the bitrate requirement, which willcause the suspension of stalling and quality switching. If thepredicted bandwidth value is less than the real bandwidthvalue, some bandwidth may be wasted, which will degradethe received video quality. However, the proposed algorithmstill works better than the baseline scheme due to the jointconsideration of uplink and downlink rate allocation. TABLE II: Performance comparisons.
Network Trace PerformancesAlgorithm 1 Algorithm 2 Algorithm 3Bicycle Trace 8.9057 7.0652 6.2781Predicted Bicycle Trace 8.0236 6.2537 5.7966Car Trace 6.3325 5.2933 4.7337Predicted Car Trace 5.0321 4.1097 3.5282Bus Trace 5.0026 4.0219 3.5537Predicted Bus Trace 3.9803 3.1102 2.2576
V. CONCLUSIONSIn this paper, we proposed a multi-user QoE-driven 360-degree video live streaming system, which jointly considersthe uplink and downlink transmissions. In our system, theserver selects the optimal bitrate settings for both the uplinkand downlink channels based on the bandwidth informationand the users’ real-time FOV to maximize the QoE valueof all users. To achieve this, we proposed an algorithm thatcombined the KKT condition and branch and bound methodto solve the defined rate adaptation problem. Finally, thesimulation results based on the real-world network tracesdemonstrated that our proposed algorithm outperformed otherbaseline schemes. R
EFERENCES[1] J. Li, R. Feng, Z. Liu, W. Sun, and Q. Li, “Modeling qoe of virtualreality video transmission over wireless networks,” in , Dec 2018.[2] Z. Liu, S. Ishihara, Y. Cui, Y. Ji, and Y. Tanaka, “Jet: Joint sourceand channel coding for error resilient virtual reality video wirelesstransmission,”
Signal Processing , vol. 147, pp. 154–162, 2018.[3] X. Liu, B. Han, F. Qian, and M. Varvello, “Lime: Understandingcommercial 360 degree live video streaming services,” in
Proceedingsof the 10th ACM Multimedia Systems Conference , ser. MMSys’19.New York, NY, USA: ACM, 2019, pp. 154–164.[4] X. Corbillon, A. Devlic, G. Simon, and J. Chakareski, “Optimal set of360-degree videos for viewport-adaptive streaming,” in
Proceedings ofthe 25th ACM International Conference on Multimedia , ser. MM ’17.New York, NY, USA: ACM, 2017, pp. 943–951.[5] A. Ghosh, V. Aggarwal, and F. Qian, “A Rate Adaptation Algo-rithm for Tile-based 360-degree Video Streaming,” arXiv e-prints , p.arXiv:1704.08215, Apr 2017.[6] L. Xie, Z. Xu, Y. Ban, X. Zhang, and Z. Guo, “360probdash: Improvingqoe of 360 video streaming using tile-based http adaptive streaming,” in
Proceedings of the 25th ACM International Conference on Multimedia ,ser. MM ’17. New York, NY, USA: ACM, 2017, pp. 315–323.[7] R. Konrad, D. G. Dansereau, A. Masood, and G. Wetzstein, “Spinvr:Towards live-streaming 3d virtual reality video,”
ACM Trans. Graph. ,vol. 36, no. 6, pp. 209:1–209:12, Nov. 2017.[8] C. Guo, Y. Cui, and Z. Liu, “Optimal multicast of tiled 360 vr video,”
IEEE Wireless Communications Letters , vol. 8, no. 1, pp. 145–148,2018.[9] J. Van Der Hooft, S. Petrangeli, T. Wauters, R. Huysegems, P. R. Alface,T. Bostoen, and F. De Turck, “Http/2-based adaptive streaming of hevcvideo over 4g/lte networks,”
IEEE Communications Letters , vol. 20,no. 11, pp. 2177–2180, 2016.[10] Ningning Hu and P. Steenkiste, “Evaluation and characterization ofavailable bandwidth probing techniques,”