{'fraction_non_alphanumeric': 0.028052890847809177, 'fraction_numerical': 0.007207674358309567, 'mean_word_length': 4.406784412671713, 'pattern_counts': {'":': 0, '<': 2, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 11, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
An Algorithm for Transmitting VR Video Based on Adaptive Modulation

Virtual reality (VR) is making waves around the world recently. However, traditional video streaming is not suitable for VR video because of the huge size and view switch requirements of VR videos. Since the view of each user is limited, it is unnecessary to send the whole 360-degree scene at high quality which can be a heavy burden for the transmission system. Assuming filed-of-view (FoV) of each user can be predicted with high probability, we can divide the video screen into partitions and send those partitions which will appear in FoV at high quality. Hence, we propose an novel strategy for VR video streaming. First, we define a quality-of-experience metric to measure the viewing experience of users and define a channel model to reflect the fluctuation of the wireless channel. Next, we formulate the optimization problem and find its feasible solution by convex optimization. In order to improve bandwidth efficiency, we also add adaptive modulation to this part. Finally, we compare our algorithm with other VR streaming algorithm in the simulation. It turns out that our algorithm outperforms other algorithms.


A. Background
Virtual reality (VR) promises to revolutionize the way people interact with media. Providing users with an immersive experience in a virtual world by transmitting panoramic video streams, VR is drawing more and more attentions and has been applied to many fields such as entertainment, medical application, education, and so on. A research report on Chinese VR market indicates that the VR market is expected to exceed $15.9 billion in 2019 and reach $30 billion in 2020 [1].
However, current technologies for streaming try to fetch all the portion of the chunks in the same quality, which results in a high bandwidth utilization [2] and a limitation on content generation. It is clear that traditional video streaming strategies cannot be directly applied to VR video steaming. This is because the traditional method does not consider VR's unique features such as its huge size and view switch requirements. Moreover, video quality, transmission errors and delay should be considered especially when a VR video is transmitted over unstable band-limited wireless channels. Hence, transmission algorithms are required to save resources and ensure the quality of experience (QoE) of the users.

B. Related work
The most common way adopted by researches on VR video streaming is to divide the initial large imagine into smaller pieces (often called tiles). Given that each time users can only watch a certain part of a panoramic video which is called Field of View (FoV), there is no need to transmit all the tiles in high quality. Fig.1 shows an illustration of tile division. And lots of bandwidth can be saved by only setting tiles in FoV to high quality. Many works have been done on this basis. Hosseini proposed an adaptive view-aware bandwidthefficient VR video streaming framework based on the tiling features of spatial relationship description [3]. A rate adaption algorithm was proposed in [4]. Its basic idea is to fetch the invisible portion of a video at the lowest quality based on users head movement prediction, and to adaptively decide the video playback quality for the visible portion based on bandwidth prediction. Liu et al. considered unequal error protection for FoV and formulated the inherent error resilient VR video transmission problem into a joint source and channel coding problem [5].
Besides, there are also many researches on resource allocation with multiple users. Chen et al. proposed a novel VR model based on multi-attribute utility theory and formulate the resource allocation problem as a noncooperative game. A distributed algorithm based on the machine learning framework of echo state networks was proposed to solve the resource allocation problem [6]. Since keeping sending real time tracking information about users FoV will lead to a significant burden for a communication system, some work has been done on FoV prediction. Zhu et al. established a model to predict the saliency maps and scanpaths for the users' head movement and eye motion data and scan paths data, respectively [7].

C. Our work
The intention of our work is to present a bandwidth-efficient VR video transmission strategy with relatively high QoE under changeable channel conditions. In particular, we propose our model and design an algorithm that can adaptively adjust encoded bitrate according to the wireless channel condition.
We first define a QoE metric. Two issues are considered when defining the QoE metric. One is the video quality, and the other is the stall time during adjacent chunks due to bad channel condition. Intuitively, high encoded bitrate can lead to severe stall time. In our QoE metric, we adopt the idea of saliency map to reflect the video quality and use the stall time definition in [4]. The QoE metric shows a trade-off between video quality and play-back delay.
Secondly, we formulate the optimization problem to maximize the QoE metric. With some relaxations, we convert the original problem to a convex one. Based on the solution of the convex problem, we use our algorithm to get the feasible solution of the original problem.
Next, we provide simulations to examine the proposed algorithm. Numerical results indicate that the proposed algorithm performs better comparing to two existing algorithms in [4]. Moreover, adaptive modulation brings additional performance gains.
In general,the contributions of our work are summarized as follows: • We formulate the QoE metric for VR video streaming on the basis of saliency map. • We convert the optimization problem of QoE to a relaxed convex one and propose an algorithm to find the feasible solution. • We employ adaptive modulation to take the fading effect of wireless channel into consideration when designing the transmission strategy. • Numerical results are provided to illustrate the effectiveness of the proposed algorithm. The proposed algorithm achieves significant performance gains comparing to the existing algorithms in [4]. The rest of this paper is organized as follows. In Section II, we propose our system model. In Section III, we formulate the QoE maximization problem and provide an algorithm to find its feasible solution. Numerical results are provided in Section IV. Finally, conclusions are drawn in Section V.
Notation: Lowercase letters x and uppercase letters X denote scalars. The Euclidean norm operator is denoted by · . Let z ∼ CN (0, σ 2 ) denote a complex Gaussian random variable z with zero mean and variance σ 2 .

II. SYSTEM MODEL
In this section, we introduce the system model considered in this paper. In general, we incorporate saliency map, wireless channel, and adaptive modulation scheme to the system model in [4].

A. Evaluation metrics for video quality
We assume the video is composed of K chunks. Each chunk lasts L seconds. Then, the total video duration is KL. For each chunk k ∈ {1, 2, ..., K}, there are N tiles in total. The tile i within chunk k can be encoded at the rate (Note that tiles can only be encoded with optional discrete rates.) Then the total size of the chunk k can be calculated as L N 1 R i,k . The set of the serial number of M tiles in the FoV area of chunk k is denoted as V k . So the size of the FoV area in chunk k is calculated as L i∈V k R i,k .
Next, we present evaluation metrics to measure users' viewing experience according to the encoding rate. Note that here we just take encoding rate as a reflection of the picture quality of a VR video without considering the stall time. Functions like EM (R) = aR b (a > 0, 0 < b < 1) can be good choices. The constraint on the range of a and b ensures that the function is a strictly increasing convex function, and its first derivative decreases with the increase of independent variable R, which is very close to the actual situation. With the encoding rate increasing, users will get higher quality of experience. But this upward trend keeps weakening when the encoding rate reaches higher levels. In terms of human brain characteristics, the perception of an entire scene is achieved in the brain by merging together individual images captured at various fixation points throughout successive saccadic eye movements. In general, tiles with distinctive features are more likely to attract users and play a greater role in brain imaging. Therefore, instead of regarding min i∈V k R i,k as a dominant optimization metric as in [4], we introduce the concept of saliency map in this paper. In real experiments [8], users' eye-gaze data can be stored and analyzed to build a saliency map in witch tile i in chunk k is attached with weight w i,k . Finally, the evaluation metrics for video quality of chunk k can be written as: (1)

B. Wireless channel model
To meet the increasing demand of VR, we need to consider the wireless transmission of VR in a large space. Hence, we should consider the impact of the wireless channel on transmission. In our model, we consider a channel with additive white Gaussian noise affected by both large scale fading and small scale fading h ∼ αh r , α is subject to a uniform distribution, representing the large scale fading. h r ∼ CN (0, 1) represents the small scale fading.

C. Adaptive modulation
Adaptive modulation is widely used in today's wireless transmission and has been adopted in our transmission strategy to improve bandwidth utilization. The basic idea is the most bandwidth-efficient modulation is used at a guaranteed low bit error ratio (BER). Fig.2 shows BER for various modulations as a function of short-term average SNR at the receiver. Suppose the symbol rate and transmitted power are fixed, we can determine the modulation mode according to the detected channel condition. Let m k be the spectral efficiency for chunk k, and it can be mathematically expressed as: In the above equation, i ∈ {1, 2, 4, 6} represents the spectral efficiency of BPSK, QPSK, 16-QAM and 64-QAM. S(P e , i) gives the threshold value of SNR for modulation mode corresponding to i with BER equal to P e . B is the channel bandwidth.

D. Stall time
VR video chunks are first downloaded to users' local buffer before they are played. In practice, the buffer capacity is limited. However, considering the large amount of VR video data, the downloading speed is too limited for the cache to hold multiple chunks at the same time. So we do not consider the limitation of buffer capacity on our model. Chunk k can only be downloaded after chunk k − 1 has been downloaded. Let t k denotes the start time of downloading chunk k and suppose there is no gap between downloading two chunks. Then, for k > 1, we have where the bandwidth B also equals to the symbol rate. m k−1 B is the downloading rate. L N i=1 R i,k−1 is the total size of chunk k.
Chunk k can only be played after it is downloaded to the buffer and chunk k − 1 has been played. Let t k denote the play time of chunk k. For k > 1, we have Since the start time is considered to be when users see the first chunk being played, we simply set t 1 = t 1 = t 2 = 0. Stall time will appear if the play of chunk k −1 ends before chunk k is downloaded to the buffer. Denote the stall time between chunk k − 1 and chunk k as ∆t k (∆t 1 = 0) and we have

III. QOE OPTIMIZATION
In this section, we first define our QoE metrics and formulate the optimization problem. Next, we design an algorithm to find the feasible solution.

A. QoE maximization problem
The quality of users' experience should be determined in two ways. One is the encoding rate at FoV area which directly affects the quality of the video scene, and the other is the stall time when video is played. Obviously, we need a steaming strategy that makes the former term larger while the latter smaller. Thus, we define the QoE metrics of chunk k as follow: At the same time, we would like to make the following explanations to this optimization target: • In our model, our optimization target is specific to each chunk. And the optimal result for chunk k is based on chunk 1, · · · , k − 1. So the final solution may not be the optimal for the whole video. However, due to technical limitations, it is impossible to achieve channel detection and FoV prediction for a long time like a whole video duration. Hence, it makes sense to narrow down the optimization time interval. • When solving the optimization problem, we suppose that the FoV area is correctly predicted. However, it is quite possible to predict a wrong area. And this is also the reason why we encode tiles outside FoV at bitrate R 1 (lowest optional rate).
So far, we formulate our optimization problem for chunk k in which constrain (6) is also equivalent to the following two inequalities ∆t k ≥ 0, And the reformulated optimization problem is

B. Feasible solution
The optimization problem mentioned above is not a typical convex one because the range of variables R i,k is discrete. In this subsection, we present our algorithm that finds a feasible solution to the problem.
Suppose now the range of R i,k is continuous from R 1 to R m , the original problem reduces to a convex optimization problem where the optimal value is denoted as R * i,k . If we choose R i,k = max R j : R j ≤ R * i,k , we will get a solution which is close to the optimal solution. However in most cases, Algorithm 1 The main algorithm for finding feasible solutions for chunk k to the QoE opimization problem. 1: Initialization: T k = 0. 2: for each i ∈ V k do 3: i ← q : w q,k is the j th largest weight for tiles in V k ; 12: if T k ≥ 0 then 14: end if 18: end for this will still be a waste of bandwidth. Thus, we provide an algorithm with higher bandwidth efficiency and solutions closer to the optimal.
The basic idea of the algorithm is that we try to increase the encoding rate according to the priority of weights in the saliency map without increasing the delay. Since EM (·) is convex, the improvement in QoE slows down as the encoding rate increases. And generally the overall quality improvement at FOV is better than only one highlighted. Thus, rather than setting the encoding rate of one tile two levels up, we prefer to set both two tiles one level up.

IV. SIMULATIONS AND RESULTS
In this section, we evaluate our algorithm in simulations, and compare it with other VR streaming algorithms. (Note that the curves obtained by our algorithm is marked as "main" in the figure notes.)

A. Parameter setup
In simulation, the VR video is divided into 4 × 8 tiles. And the FoV area is consists of 2 × 3 tiles. The duration of each chunk is 2 seconds. And for the number of chunks K = 1000, the whole length of the VR video is around 36 minutes. And we set each tile's rate R i,j ∈ {1, 2, 3, 4}Mbps.
Half the weights w i,k are set at 1 and the rest are randomly set between 1 and 2.
The channel bandwidth is 20Mbps with a 25% fluctuation. We change α every 40 seconds and h r every 2 seconds based on their distribution to simulate the channel condition.
The probability of FoV being correctly predicted is denoted as β. And in our simulations, we set the value of β to vary between 0.5 and 0.9.   We also simulate algorithms mentioned in [4] for VR streaming. In the baseline algorithm [9], all the tiles within a chunk is encoded at a same rate although most tiles will not be seen. And greedy algorithm [10] only sends those tiles with highest probability to be the apart of FoV and ignores the rest ones, which may result in users seeing blank tiles when FoV prediction fails. Apart from these, we also use our algorithm on the situation when bits are only QPSK modulated [4] to see how adaptive modulation will benefit the system. Unless otherwise noted, by saying "our algorithm", we refer to our algorithm with adaptive modulation.

B. Results and discussions
We observe from Fig. 3 that as the FoV prediction probability β increases, both our algorithm and greedy algorithm increase QoE. The performance of our algorithm is better than greedy algorithm and baseline algorithm. As β increases, greedy algorithm approaches our algorithm. This is because greedy algorithm selects a larger potential FoV area than our algorithm at the cost of rest tiles unsent. In other words, in greedy algorithm, bandwidth resources are centralized for a certain portion of tiles rather than all of them. When β is low, blank tiles may be sent in FoV by using greedy algorithm, resulting in low QoE. However, as β increases and FoV prediction error decreases, greedy algorithm shows a faster growth. The curve of baseline algorithm remains flat because its performance only depends on the channel condition. Comparing the performance of our algorithm under different modulation schemes, we verify that adaptive modulation is superior to QPSK. Additionally, the advantage of adaptive modulation over QPSK keeps expanding as β increases.
The average bitrate of tiles in the FoV area vs. β is shown in Fig. 4. It is illustrated in Fig. 4 that except for baseline algorithm, the average bitrate increases monotonically with β for other algorithms. And our algorithm outperforms other algorithms by at least 23%. Compared with QPSK modulation, our algorithm with adaptive modulation provides significant improvement of average bitrate in FoV. Fig. 5 shows the distribution of tiles with different encoding levels in the FoV area. Of all the algorithms, our algorithm provides the highest proportion of 4Mbps tiles. For baseline algorithm, 1Mbps tiles dominate. One unique feature of greedy algorithm is that it is the only algorithm that have 0Mbps tiles. This is because blank tiles will appear in the actual FoV area when prediction error occurs according to the encoding scheme of greedy algorithm. It is also illustrated in Fig. 5 that with adaptive modulation, our algorithm fetches more percentage of 4Mbps tiles and fewer 1 or 2Mbps tiles than QPSK modulation. Fig. 6 plots the percentage of tiles encoded in different levels for the whole video. For algorithms that encode all the tiles, 1Mbps tiles have the largest proportion. While in greedy algorithm, the dominant tiles are blank tiles. The percentage of 4Mbps tiles of greedy algorithm exceeds that of our algorithm because it selects a larger potential FoV area than our algorithm at the cost of rest tiles unsent. However, greedy algorithm still performs poorer than our algorithm in QoE because FoV can not be predicted 100% correctly and blank tiles will cause severe impact on QoE.

V. CONCLUSION
In this paper, we propose a novel strategy for VR video streaming based on adaptive modulation. We define a QoE metric according to features of brain imaging and provide an algorithm to find feasible solution of the QoE maximization problem. We evaluate our algorithm in simulations to compare it with baseline algorithm and greedy algorithm. In addition, we use our algorithm under QPSK modulation to see the advantage of adaptive modulation. Numerical results indicate that our algorithm outperforms other algorithms. Besides, compared to QPSK modulation, our algorithm improves the QoE by at least 13% using adaptive modulation. In the future, we expect to evaluate our algorithm in real VR videos.