## Correction

18 May 2016: Tham ML, Chow CO, Xu YH, Ramli N (2016) Correction: Two-Level Scheduling for Video Transmission over Downlink OFDMA Networks. PLOS ONE 11(5): e0152844. doi: 10.1371/journal.pone.0152844 View correction

## Figures

## Abstract

This paper presents a two-level scheduling scheme for video transmission over downlink orthogonal frequency-division multiple access (OFDMA) networks. It aims to maximize the aggregate quality of the video users subject to the playback delay and resource constraints, by exploiting the multiuser diversity and the video characteristics. The upper level schedules the transmission of video packets among multiple users based on an overall target bit-error-rate (BER), the importance level of packet and resource consumption efficiency factor. Instead, the lower level renders unequal error protection (UEP) in terms of target BER among the scheduled packets by solving a weighted sum distortion minimization problem, where each user weight reflects the total importance level of the packets that has been scheduled for that user. Frequency-selective power is then water-filled over all the assigned subcarriers in order to leverage the potential channel coding gain. Realistic simulation results demonstrate that the proposed scheme significantly outperforms the state-of-the-art scheduling scheme by up to 6.8 dB in terms of peak-signal-to-noise-ratio (PSNR). Further test evaluates the suitability of equal power allocation which is the common assumption in the literature.

**Citation: **Tham M-L, Chow C-O, Xu Y-H, Ramli N (2016) Two-Level Scheduling for Video Transmission over Downlink OFDMA Networks. PLoS ONE 11(2):
e0148625.
doi:10.1371/journal.pone.0148625

**Editor: **You Yang, Huazhong University of Science and Technology, CHINA

**Received: **June 4, 2015; **Accepted: **January 21, 2016; **Published: ** February 23, 2016

**Copyright: ** © 2016 Tham et al. This is an open access article distributed under the terms of the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original author and source are credited.

**Data Availability: **All relevant data are within the paper.

**Funding: **This project is supported by the University of Malaya, Malaysia, under UMRG grant (RG064/11ICT), and MIMOS Berhad. The funder MIMOS Berhad provided support in the form of salaries for authors MLT and NR, but did not have any additional role in the study design, data collection and analysis, decision to publish, or preparation of the manuscript. The specific roles of these authors are articulated in the ‘author contributions’ section.

**Competing interests: ** The authors would like to declare a commercial affiliation with MIMOS Berhad. This does not alter the authors' adherence to PLOS ONE policies on sharing data and materials.

## Introduction

With the rapid growth of video traffic over wireless networks, mobile operators are expected to support a large number of video subscribers simultaneously. The quality-of-service (QoS) provisioning of these services confronts two major technical hurdles. First, video communication is bandwidth intensive and delay sensitive while the inherent limited wireless resources are shared by multiple users. Second, loss of different video packets induces different amounts of distortion in the received video. When transmitting video over error-prone wireless channels, the impact of channel errors on the video can be extremely severe. To optimize the received video quality, it is essential to allocate radio resources to video packets in an efficient and robust way by taking into account the channel conditions and the video characteristics.

Resource allocation (RA) for orthogonal frequency-division multiple access (OFDMA) systems has spurred significant attention from both industry and academia communities due to high spectral efficiency and fine granularity resource control (e.g., subcarrier, power and bit). Conventional RA schemes treat video bitstreams in a content-agnostic fashion [1]. Accordingly, the measurement of QoS satisfaction level is often linked to average throughout, packet delay or/and packet loss ratio [2–5]. Such performance indicators, however, do not directly translate into actual video quality [6]. One reason is that the spatial-temporal characteristics cannot be captured in generic bitstream. Another reason lies in the fact that video bitstreams are typically equipped with source-level error robustness features. How the lost or damaged packets are concealed by a decoder dictate the final reconstructed video quality.

Several recent RA works have explicitly selected video quality as their QoS performance metric. These works can be categorized as content-aware RA methods. The core idea is to determine the importance level of each packet. In [7], a channel allocation method is devised for the quality-of-experience (QoE)-driven multimedia transmissions over the cognitive radio networks. However, power allocation is not considered. In [8], a RA scheme that maximizes the weighted sum rate of all video users is proposed. Each user weight is measured by the highest importance level of packet buffered in that user transmission queue. Resources are then distributed across multiple users as a function of user weights and channel conditions. Similar strategy is extended to the case of scalable video bitstreams in [9]. This time an additional parameter called packet deadline requirement is introduced in the weight calculation. The above two schemes, however, share the same drawback, i.e., the users with much higher weights always seize the transmission opportunity. This may lead to low resource utilization if those selected users suffer from poor channel gains on the one hand, and starvation in remaining users on the other hand. Such unfairness issue is addressed in [10] by taking into account the scheduled packet size. However, identical to [8–9], the packets from each user queue are scheduled first by neglecting the resource consumption efficiency. A step forward from allocating resources for a group of scheduled packets is the joint consideration of these two aspects. The authors in [11] demonstrate the promising video performance with such design.

Despite the significant gains accrued by the content-aware RA schemes in [8–11], their video performances are purely derived based on the assumption of error-free transmission. This, however, does not hold in practical communication systems that comprise of modulation and coding techniques. In fact, in such systems, the prime concern is to achieve the best tradeoff between the bit rate and the link reliability associated with a target bit-error-rate (BER). According to [12], the target BER criterion has a critical impact on the video performance. If the value is loose, despite the abundant availability of packets at the receiver, most of them are corrupted and thus undecodable. Instead, if the target BER is strict, packets are forwarded in a conservative way, which may render limited achievable quality though most of the packets are decodable. In [13], practical modulation and coding schemes are considered in their video transmission platform. However, similar to [12], all video packets are simply assigned with a static target BER, irrespective of the importance of that packet. Moreover, equal power allocation (EPA) is adopted to simplify the solution development.

In this paper, we propose a two-level multiuser video transmission framework which optimizes the packet scheduling and resource allocation. The ultimate goal is to maximize the average video quality of all users under the playback delay and resource constraints. This is achieved by jointly exploiting the multiuser diversity and the importance of each packet. Real encoded video bitstreams with practical modulation and coding schemes are considered. With regard to the coding aspect, a coded orthogonal frequency-division multiplexing (OFDM) system is considered. In general, any OFDM system that combines channel coding and interleaving techniques can be classified as coded OFDM systems. This technique is very effective in combating the burst errors stemming from the OFDM frequency selectivity that compromises the channel coding performance [14].

The main contributions of this paper are as follows. First, most existing RA works treat all the video packets with the same target BER. In contrast, the proposed RA allocates resources in such a way that more (less) important video packets are assigned with stricter (looser) target BERs. This can be viewed as a form of unequal error protection (UEP) which is established for its superior performance in transmission over noisy networks. Second, an overall target BER is considered to control how many average packets can be sent within one transmission interval. As observed in [12], the transmitter itself does not know the optimal value that renders the best overall video quality. In this regard, the proposed RA seeks the best quality-resource tradeoff and thus will always be a safer option irrespective of the pre-determined overall target BER.

Third, in a practical wireless video transmission system, this paper aims to cast some light on the suitability of EPA, which is the most prevalently used alleviation in the RA literature [15]. In fact, most previous works justify the use of EPA from a theoretical perspective and isolate the influence of channel coding. More specifically, validations are made by distinguishing the performance between EPA and frequency-selective power allocation (FPA) in terms of spectral efficiency, where FPA assigns power to subcarriers as a function of their channel conditions. It is however, not clear, how exactly the theoretical performance gap translates into the actual video performance gap. The findings are deemed valuable as channel coding is part and parcel of practical systems.

The rest of the paper is organized as follows. Section 2 presents the system specifications, models and assumptions. Section 3 describes the two-level scheduling design. Section 4 reports simulation details and results. Section 5 concludes the paper.

## System Model

We consider a downlink transmission scenario, where a base station (BS) transmits *K* different video streams, each to a designated user as depicted in Fig 1. The BS receives the video streams from a remote media server via a high-bandwidth and lossless connection. These streams are assumed to be pre-encoded with the H.264/AVC video coding standard [16]. Therefore, real-time transcoding techniques such as [17] are not applicable in this context. Each video frame is divided into one or more slices which can be decoded independently. We assume that one slice is directly packetized into one transport packet. Hereafter the term "slice" and "packet" will be used interchangeably. Once a user requests a video, the corresponding packets are instantly transmitted to the BS and buffered at that user queue. Each packet *m* of user *k* is stamped with the importance level *Q*_{k,m} (described later), packet size *R*_{k,m} and waiting time *T*_{k,m}. These parameters are collected as video content information (VCI). Note that any packet that misses its decoding deadline *T*_{max} will be discarded by the BS.

All scheduled video sessions are served via a downlink OFDMA system with a total power *P*_{tot} and a total bandwidth *B*_{T}. There are *N* subcarriers to be shared by all users. Each subcarrier occupies a bandwidth of *B*_{n} = *B*_{T}/*N* and experiences flat fading under the assumption that *B*_{n} is smaller than the coherence bandwidth in a frequency-selective wireless channel. At the receiver, additive white Gaussian noise (AWGN) of power spectral density *N*_{0} with mean zero and variance *σ*^{2} = *N*_{0}*B*_{n} is present. For user *k* on subcarrier *n*, the channel gain and the corresponding channel-to-noise ratio (CNR) are denoted by *H*_{k,n} and *γ*_{k,n} = |*H*_{k,n}|^{2}/*σ*^{2}, respectively.

We assume that the BS has perfect knowledge of channel state information (CSI) and the channel conditions remain static over one time transmission interval (TTI). The TTI corresponds to the time length of a single media access control (MAC) subframe with *L* OFDMA symbols for payload transmission. Note that although “frame” is a more accurate way to refer to the physical layer service data unit (SDU), we use “subframe” to avoid confusion between MAC and video frames. Then, the achievable transmission bits at subframe *t r*_{k,n}[*t*] is expressed as
(1)
where *α*_{k,n} and *s*_{k,n} denote realistic coding gap and transmission power allocated on subcarrier *n* of user *k*, respectively. If square M-QAM modulation with Gray bit mapping is adopted, *α*_{k,n} is provided by
(2)
[18]. Note that *r*_{k,n}[*t*] should be restricted to integer form due to discrete modulation levels Γ_{k,n} which is given by
(3)
However, we assume a non-integer number of bits for tractability first. This constraint will be explicitly considered in Section 3–2. With *r*_{k,n}[*t*], the number of video bits that can be loaded onto subcarrier *n* is expressed by
(4)
where *c* is the coding rate.

Denote *ρ*_{k,n} as the indicator for subcarrier allocation, where *ρ*_{k,n} = 1 implies that subcarrier n is assigned to user *k*; otherwise, *ρ*_{k,n} equals to zero. As each subcarrier cannot be shared by multiple users, the binary variable ρ_{k,n} should satisfy
(5)

Let Ω_{k} be the set of subcarriers assigned to user *k*. Then, only subcarrier *n* with ρ_{k,n} = 1 is included in Ω_{k}. To ease the notational burden, let overall CNR as a matrix **γ** with [**γ**]_{k,n} *=* γ_{k,n}, rate allocation as a matrix **r** with [**r**]_{k,n} *= r*_{k,n}, subcarrier assignment as a matrix ρ with [**ρ**]_{k,n} = *ρ*_{k,n}, power allocation as a matrix **s** with [**s**]_{k,n} = *s*_{k,n}, and coding gap as a matrix ** α** with [

**]**

*α*_{k,n}=

*α*_{k,n}.

Based on the video content information and the channel state information, the proposed two-level scheduler (shaded area) makes decision once every subframe. The upper level schedules the transmission of video packets among multiple users based on an overall target bit-error-rate (BER). Instead, the lower level assigns subcarriers to the scheduled users, as well as adjusts modulation and power levels of each subcarrier. The ultimate goal is to maximize the average overall quality of all users while adhering to resource and playback constraints. Once the optimization decision is made, each scheduled user flow undergoes bit-interleaved coded modulation (BICM) in isolation due to its strong forward error protection in frequency-selective fading environments [14].

Let us now scrutinize the BICM operation in the context of video delivery. First, the selected packets from video *k* are aggregated into a bitstream which will be convolutionally encoded into coded bits and then interleaved across several subcarriers that has been assigned to that corresponding user. The number of interleaved bits that can be loaded onto each subcarrier depends on the calculated modulation constellation size. Second, at the receiver, hard-decision demodulation is performed on the received signal of each subcarrier, followed by de-interleaving in order to assemble the coded bits. Third, the concatenate video bitstream is obtained by passing the coded bits to the Viterbi decoder. Finally, the bitstream is unmerged into video packets where only error-free packets are passed onto the video decoder and corrupted ones are considered lost.

Error concealment invokes when there is any lost packet in order to mask the visual artifacts. We choose the copy-from-previous (CP) error concealment method due to its simplicity and efficiency [19]. In particular, it copies the pixel values of the entire slice at the co-located slice from the previously decoded frame. We then define *Q*_{k,m} as the quality increment of decoded video *k* caused by the transmission of packet *m*. Mathematically, it can be expressed as
(6)
where and are the distortion caused by the lost and the transmission of packet *m* after the transmission of Π_{k}(*m*−1)≜{*π*_{k,1},*π*_{k,2},…,*π*_{k,m−1}}, respectively. *τ*_{k,m} is the indicator for packet scheduling, where *τ*_{k,m} = 1 implies that packet *m* of user *k* is scheduled at the current subframe. Otherwise, *τ*_{k,m} = 0. Π_{k}(*m*−1) denotes the reordered set of packets in user queue *k* such that *π*_{k,1} is the first packet to be transmitted from that queue.

A brute-force approach that obtains *Q*_{k,m} in Eq (6) is to calculate the mean square error (MSE) of pixel values between original and concealed frames. This, however, poses a prohibitive computational burden at the BS due to the nontrivial decoding process. For this reason, we resort to the transmission distortion model as proposed in [20], where and are predicted by using a different function of expected distortion accumulated up to the previous frame *f*−1 (denoted as ), macroblock (MB) partition modes and motion vector. Obviously, all these parameters can be readily obtained during the video encoding process except that the expected distortion must be computed on the fly in order to capture the effect of error propagation.

Note that other transmission distortion models associated with different error concealment methods can potentially be incorporated here, but they are not investigated due to space limitations. Also, we do not consider retransmission of erroneous packets as it may not be feasible for real-time video applications.

## Two-Level Scheduling for Video Transmission

In this section, we present a two-level scheduling scheme for video transmission. First, we discuss the packet scheduling scheme. Second, we formulate an optimization problem for assigning subcarriers to the scheduled packets of different users and then assign modulation levels as well as power on those subcarriers. Finally, we elucidate how to update *Q*_{k,m}.

### Packet Scheduling

The goal of packet scheduling is to sort the video packet transmission order as a function of the importance level *Q*_{k,m} and *J*_{k,m}, at the beginning of each subframe. *J*_{k,m} denotes the resource consumption level of packet *m*. For each user queue, there are *M*_{k} available packets of the same frame at subframe *t*. In general, the number of subframes available per video frame can be calculated by ⌊*T*_{max}/TTI⌋. Hereafter we omit the time index “*t*” for simplicity as it remains invariant throughout this paper.

Based on the idea in [11], *J*_{k,m} is defined as the least number of free subcarriers needed to send packet *m* with the premise of EPA. Then, the packet with the best ratio of *Q*_{k,m}/*J*_{k,m} is served in one selection loop until there are no more subcarriers. The procedures are summarized as follows:

**Algorithm 1: Packet Scheduling.**

1: Initialization: Set **N** = {1, 2, *itN*} and **M**_{k} = {1, 2, it*M*_{k}}for ∀*k*; obtain *Q*_{k,m} for ∀*m* ∈ **M**_{k} and ∀*k*; set *BER*_{k,n} = *overall target BER* for ∀*k* and ∀*n*; set *s*_{k,n} = *P*_{tot}/*N* for ∀*k* and ∀*n*.

2: **repeat**

3: **for** *k* = 1 to *K*

4: Sort *γ*_{k,n} of set **N** in a descending order. Obtain corresponding mapping indexes *I*_{k}(*n*) ∈ {1,2,*α N*} for ∀*n*

5: Using Eq (4), construct set corresponding to the reordered subcarrier indexes. Furthermore, construct set by computing the cumulative sum of the elements along *A*_{k}.

6: **for** *m* = 1 to *M*_{k}

7: Find *n** such that and set *J*_{k,m} = *n**

8: **end for**

9: **end for**

10: Find *k**,*m** = arg max_{k,m}(*Q*_{k,m}/*J*_{k,m}) and set *τ*_{k*,m*} = 1

11: Update **M**_{k*} = **M**_{k*}−*m**; **N** = **N**−{*I*_{k*}(1), *I*_{k*}(2), …, *I*_{k*}(*J*_{k*,m*})}

12: **until** no more packet to be streamed or the condition of line 07 is not satisfied for ∀*k*∀*m*

Switching the *overall target BER* may change not only the number of scheduled packets, but also the packet order to be transmitted. This is because *J*_{k,m} is associated with the transmission rate that varies accordingly with the *overall target BER*. Hence, [11] that does not consider *overall target BER* can be treated as a special case of *Algorithm 1*.

From the BS perspective, it would seem logical that the packets are forwarded as fast as possible (by setting *overall target BER* to a loose value) in order to avoid deadline violations. However, the pitfall is that many received packets are possibly corrupted and thus undecodable. On the other hand, if packets are forwarded in a conservative way, it may render limited achievable video quality though most of the packets are useful. This is in line with the observation in [12], that *overall target BER* criterion has a critical impact on the video performance and its optimal value cannot be known a priori. Under such circumstances, resource allocation should be adaptive to the scheduled packet priority in an UEP way so that the average overall video distortion can be minimized.

### Resource Allocation

To bridge the gap, we propose an UEP-oriented subcarrier assignment strategy that assigns stricter target BERs to more important packets and *vice versa*. To this end, an optimization problem that minimizes a weighted sum of user coding gaps subject to the scheduled packet length constraints is formulated. Assuming EPA, the problem can be expressed as
subject to Eqs (2) and (5),
(7)
where *ω*_{k} denotes the weight factor for user *k*. The last constraint implies that the resources allocated to user *k* should be adequate enough to transmit the video packets scheduled from *Algorithm 1*. We then project the importance level of video packets into the weight, which is given by
(8)

It is apparent that a group of more important packets from user *k* will lead to a larger *ω*_{k}. Thus, user *k* has higher priority to occupy a subcarrier such that their corresponding *α*_{k,n} is reduced. However, user *k* does not essentially dominate all the best subcarriers. This is possible when another user who happens to have only a few good subcarriers that overlap with those of user *k*. Furthermore, the link reliability of a packet is tightly connected with the modulation order which is adopted to carry that packet. If user *k* already obtains sufficient subcarriers (with low modulation orders) to reliably transmit all data, remaining subcarriers can be granted to other users.

All these essences are captured in problem Eq (7) and solving it actually translates into a reduction in the average distortion of all scheduled packets. As *α*_{k,n} is an increasing function of *BER*_{k,n}, solution to Eq (7) yields to a situation where more important packets are possibly error-free due to stricter BERs on the one hand, and less critical packets are exposed to higher BERs on the other hand. Fortunately, the amounts of quality degradation for those low-priority packets are anticipatively minimal as they are easily concealable. The relationship between *α*_{k,n} and *BER*_{k,n} is proved in Appendix.

Note that Eq (7) has to be solved in every subframe and so does the update of *ω*_{k} associated with *Q*_{k,m}. Since *Q*_{k,m} depends on the past scheduling decisions, solution to Eq (7) offers means of effecting long-term fairness among different users in the following sense. If scheduled packets of user *k* are assigned loose target BER in the current subframe, the current video frame may suffer more distortion that would propagate to subsequent frames due to the use of predictive coding. In response to the loss, *Q*_{k,m} of the new frame would essentially grow larger. This enforces the BS to assign stricter BER to user *k*’s packets in the future subframes.

To solve Eq (7), let us denote *μ*_{k} as the Lagrange multipliers for the rate constraints and let [**μ**]_{k} = *μ*_{k} be the multiplier vector. Then, the problem Eq (7) is equivalent to finding the minimum of the following Lagrange function
(9)

The above problem can be solved efficiently with the Lagrange dual decomposition method as long as the number of subcarriers becomes sufficiently large, i.e., *N* ≥ 8, which renders the duality gap negligible [21–22]. For this, we define the dual function *g*(**μ**) as
(10)
where the domain Λ denotes the set of **ρ** satisfying constraint Eq (5) and **α** satisfying constraint Eq (2). Then, the dual problem can be expressed as
(11)
where *g*(**μ**) is decomposed into *N* independent problems which is defined by
(12)

To solve Eq (12) individually for *n* = 1, …, *N* under the integer constraint of *ρ*_{k,n}, the subcarrier *n* should be assigned to queue *k* with the minimum value of *F*_{k,n}(*α*_{k,n})≜(ω_{k}*α*_{k,n}−*μ*_{k}*r*_{k,n}). For this, we take the derivative of with respect to *α*_{k,n} which results in
(13)
where [*x*]^{+} is defined as max(*x*, 0). Then, we derive the subcarrier assignment as
(14)
We now replace Eqs (13) and (14) into Eq (12) and rewrite Eq (12) as
(15)
where is obtained using Eq (2) with . After solving Eq (15) individually for *n* = 1, …, *N*, *g*(**μ**) is computed from Eq (11). To find the optimal **μ*** that maximizes Eq (1) regardless of the dual function differentiability, the update of **μ** can be done with the subgradient method in which the subgradient for queue *k* is defined as
(16)
where , and are the optimizing variables in the definition of *g*(**μ**) = *ℒ*(**ρ, α, μ**). Then, **μ** is updated by
(17)
where *i* is the iteration index, *δ*^{i} is a positive step size which follows diminishing step size policy [23], and is the subgradient of *g*(**μ**) for queue *k* at current iteration *i*. The same iterative procedure is repeated until the subgradients of all queues converge to zero. Finally, **μ = μ***allows us to attain near optimal solution **ρ* ≈ ρ′** and **α* ≈ α′** because the strong duality holds. The complete steps are given in *Algorithm 2*. Denote *Z*_{1} as the number of iterations needed to update until . Then, the complexity is .

**Algorithm 2: Subcarrier Assignment.**

1: Initialization: Set *i* = 1, **μ**^{i}>0, and choose 0 < *ϵ* ≪ 1 as the stopping criterion.

2: **repeat**

3: Set *ρ*_{k,n} = 0∀*k*,∀*n*.

4: **for** *n* = 1 to *N*

5: **for** *k* = 1 to *K*

6: Compute using Eq (13).

7: **end for**

8: Set using Eq (14).

9: **end for**

10:*i* = *i*+1

11: Update according to Eq (17) ∀*k*

12: **until **

So far we assume continuous version of modulation levels. In practice, the level can be only selected from the following set . *b* represents an even number starting from *b* = 2 and stands for the number of bits. *b*_{max} is the maximum number of bits and its corresponding is the highest modulation level. Note that Γ_{k,n} *=* 0 indicates no transmission.

Based on the objective function in Eq (7) with the assumption of EPA, an obvious way is to assign next modulation level to the subcarrier which requires the lowest additional coding loss factor α_{k,n}. However, it may not yield good video quality as the Viterbi decoder views the whole subchannel (those subcarriers that have been assigned to user *k*) as a channel with fluctuating BERs associated with *SNR*_{k,n} = *s*_{k,n}*γ*_{k,n}. It is well known that channel coding performs poorly in such environments and frequency-selective power allocation (FPA) can enhance the performance [14].

By using the greedy bit loading algorithm in [24], we assign next modulation level to the subcarrier with the smallest power increment. For each scheduled user, this process repeats for a total iteration of , where one iteration requires |Ω_{k}| comparisons to search for the most power-efficient subcarrier. Once this technique is performed for every scheduled user, all subcarriers’ power is normalized such that *P*_{tot} is satisfied. The overall complexity is given as .

The power allocation strategy deserves further attention. So far in the RA literature, EPA is the most commonly used assumption to alleviate the computational complexity. While such simplification enjoys the (near) optimal performance in efficiency-oriented resource allocation policies, this is not the case for fairness-oriented schemes [15]. The reason is that when fairness is emphasized, some bad channel users have to be scheduled that culminates in high channel gain variations among the users. In this case, FPA is necessary as the achieved performance gain can be significant [25]. However, these works justify their own arguments from the theoretical perspective and isolate the influence of channel coding. In contrast, we investigate the necessity of FPA from the video performance perspective.

*Q*_{k,m} Update

Recall that *Q*_{k,m} estimation requires the expected distortion accumulated up to the previous frame *f*−1, which is given by
(18)
where is the loss probability of packet *m* of frame *f*−1. If the packet is dropped by the BS, is set to one as it is assumed lost. Otherwise, associated with can be computed using Eq (2) since we already have the past scheduling decisions (i.e., Γ_{k,n} and *s*_{k,n}) by executing the proposed two-level scheduling scheme. From Eq (18), it is clear that is larger if that packet is assigned with larger BER as compared to smaller BER. Thus, *Q*_{k,m} of the new frame would react to become larger in order to reflect its urgency in terms of BER protection level.

## Results and Discussion

In the simulations, six video sequences with 100 frames: *foreman*, *carphone*, *coastguard*, *silent*, *mobile* and *news* in QCIF (176 × 144) format are used. The video sequences are encoded in H.264 (JVT reference software, JM 18.4 [26]), with the baseline profile, a frame rate of 25 fps and an encoding rate of 350 kbps. All frames, except for the first frame, are encoded as P frames. Each slice consists of a row of MBs. To enhance error robustness, random I MBs are inserted into each frame, and constrained intra-prediction is activated. The playback delay budget *T*_{max} of each packet is 40 ms.

For the OFDMA, the aggregate bandwidth *B*_{T} is 1 MHz, the available transmit power *P*_{tot} is 1 W and the number of subcarriers *N* is 256. The wireless channel is modeled as a frequency-selective fading channel that consists of six independent Rayleigh multipaths. Each multipath component is modeled by Clarke's flat fading model [27]. We assume the power delay profile exponentially decays with *e*^{-2v}, where *v* is the multipath index. Then, the relative power of the six multipath components are [0,−8.69,−17.37,−26.06,−34.74,−43.43] dB. The length of TTI is 5 ms which corresponds to 19 OFDM symbols. We assume that *L* = 15 out of 19 symbols are adopted for packet transmission while the rest is supposed to account for the signalling overhead. The maximum Doppler shift is 30 Hz and the power spectral density of the white Gaussian noise is -80 dBW/Hz. The channel coding parameters are the same as in [12], in which the convolutional encoder employs *c* = 1/2 with constraint length 5 and code generator polynomial of [23, 35] in octal. We assume four different MQAM constellations **Γ** = {0, 4, 16, 64, 256} corresponding to 0, 2, 4, 6, and 8 bits per symbol. For each subcarrier *n* assigned to user *k*, *SNR*_{k,n} is computed and channel errors are inserted in the modulated bitstream according to *SNR*_{k,n}. The average SNR of all users is 15 dB.

To assess the decoded video quality, we use PSNR ≜ 10log_{10}(255^{2}/MSE). For each video, the PSNR as reported below is averaged over 100 frames and over five sets of decoded video corresponding to five random error patterns for each time slot. All results are included in dataset (S1 Dataset). Four schemes are compared as follows.

- UEP-CA: This is the proposed two-level scheduling scheme. Recall that UEP is enabled within all scheduled packets via resource allocation.
- UEP-CA-EPA: This is the same as UEP-CA except that EPA is executed.
- CA [11]: This scheme is selected as the representative content-aware (CA) RA since it outperforms the other CA schemes (e.g. [8–9]), as reported in [11] itself. The same packet scheduling as in UEP-CA runs, but it directly assigns subcarriers to different users with EPA. Thus, all scheduled packets share the same BER protection level. Then, EPA is employed.
- MAX [28]: The classical sum rate maximization serves as a benchmark. It assigns subcarriers to the user with the best channel gain on it with EPA. In other words, it is a content-blind RA.

The complexity of each scheme is summarized in Table 1.

Fig 2 shows the average PSNR over all six video sequences for different *overall target BER*s and methods. It can be seen that the PSNR curves for all schemes possess different optimal *overall target BERs*. Nevertheless, all the curves tend to drop when *target BER* loosens. Reaching at 10^{−1}, all methods have similar poor performance of 19 dB. The reason is that higher modulation levels are needed to accommodate a burst of video packets under this setting. Therefore, most of them are corrupted and thus undecodable. It is true that the two proposed schemes especially UEP-CA significantly outperforms both CA and MAX for the entire BER range, reaching up to 6.8 dB and 7.8 dB, respectively. In other words, the proposed scheme will always be a safer option irrespective of the pre-determined *overall target BER* due to its robustness against channel errors.

In addition, the advantage of FPA over EPA can be observed from the PSNR gap between UEP-CA and UEP-CA-EPA, where the highest gap is 5.9 dB. Therefore, EPA could be an inappropriate choice and FPA is necessary to fully harness the channel coding performance. Interestingly enough, under the same EPA approach, UEP-CA-EPA is still better than CA for the entire BER range, with the gain as high as 1.3 dB. This indicates that the performance improvement does not solely derive from the FPA. As *Algorithm 2* assigns more subcarriers associated with lower modulation levels to higher-priority packets, it guarantees a certain level of link reliability. Besides, as expected, MAX yields the poorest performance as it does not consider any video-related information.

Fig 3 depicts the average PSNR for each video corresponding to *overall target BER* = 10^{−2}. It is obvious that UEP-CA-like schemes are superior to their counterparts over all video sequences. A larger performance improvement can be found not only in high-motion (complex) sequences such as *foreman* and *carphone* but also in slow-motion (simple) videos such as *news*. The packets of complex video are generally more important that those of simple video. Thus, many complex packets are likely to be transmitted where the benefit of protecting these packets via stricter target BER is more visible. On the other hand, when the simple packets are scheduled, they are deemed extremely important since many inter-coded packets rely on them. The effect of error propagation can last for a long period if these packets are distorted. UEP-CA-like schemes recognize this fact by assigning stricter target BERs to them.

Video index represents 1: *foreman*, 2: *carphone*, 3: *coastguard*, 4: *silent*, 5: *mobile* and 6: *news*.

To gain insight of the performances from another perspective, Fig 4 depicts the average PSNR and the standard deviation (STD) of the PSNR per frame over all clients for all comparison schemes corresponding to *overall target BER* = 10^{−2}. For easeof exposition, we only provide the outcome from the 10^{th} to 90^{th} frame.

(a) Average PSNR per frame. (b) PSNR variance across all users.

From Fig 4(a), it is observed that UEP-CA-like schemes consistently perform better than their alternatives over all frames. From Fig 4(b), it can be seen that CA tends to render relatively identical video quality per frame across all the clients. Such performance trend is actually not a good sign as it is attributed to its relatively low average PSNR. While the STD of UEP-CA is only -0.8~3.5 dB as compared to CA, UEP-CA shows a remarkable PSNR gain of 4.3~7.5 dB over CA. In other words, UEP-CA at its peak accrues a total quality improvement of (7.5×4 = 45 dB) over CA. Also, the video itself has its own initial average PSNR due to the same encoding rate. Therefore, such slight degradation in terms of video fairness for the UEP-CA case is reasonable. In fact, the results in Fig 3 suggest that UEP-CA-like schemes ultimately lead to the best average quality of 100 frames for all videos.

Additionally, a very meaningful phenomenon is found at the STD curves around the 80^{th} frame for the UEP-CA. There is a steep rise and drop centered at that point. The rising STD prior to the pivotal point (75^{th}~79^{th}) indicates that certain users were either suffering resource starvation or lacking of BER protection at that time. This issue would be compensated by *Algorithm 2* where stricter BERs would be assigned to 81^{st}~85^{th} frames of those users.

## Conclusions

We have proposed a two-level scheduling framework for transmitting H.264 videos over multiuser coded OFDM systems, by taking into account the channel conditions, the video information and multiple target BERs. The main contribution lies in how UEP of video packets is rendered via subcarrier assignment and power allocation strategies. A novel weighted sum distortion minimization problem was formulated and frequency-selective power allocation was employed. Bit-level simulation results demonstrate that the proposed schemes remarkably outperform the advanced schemes, with the PSNR gain as high as 6.8. Furthermore, via comparison with equal power allocation, we recommend that frequency-selective power allocation is necessary to fully exploit the potential channel coding gain.

## Appendix

### Relationships between *α*_{k,n} and *BER*_{k,n}

Applying the natural logarithm on both sides of Eq (2), we obtain (19) (20)

We differentiate Eq (20) with respect to *BER*_{k,n} to get
(21)

After some algebraic operations, Eq (21) can be rewritten as (22)

As the gradient (∂*α*_{k,n}/∂*BER*_{k,n}) is always positive for the feasible BER range is 0 < *BER*_{k,n} < 0.02, it is clear that *α*_{k,n} is an increasing function of *BER*_{k,n}.

## Supporting Information

### S1 Dataset. Comparison of different methods in terms of video quality.

doi:10.1371/journal.pone.0148625.s001

(XLSX)

## Author Contributions

Conceived and designed the experiments: MLT. Performed the experiments: MLT COC YHX. Analyzed the data: MLT COC YHX NR. Contributed reagents/materials/analysis tools: MLT COC YHX. Wrote the paper: MLT NR.

## References

- 1. Khalek A, Caramanis C, Heath RW. A Cross-Layer Design for Perceptual Optimization Of H.264/SVC with Unequal Error Protection. IEEE J. Sel. Areas Commun. 2012; 30: 1157–1171. doi: 10.1109/JSAC.2012.120802.
- 2. Mokari N., Javan MR, Navaie K. Cross-Layer Resource Allocation in OFDMA Systems for Heterogeneous Traffic With Imperfect CSI. IEEE Trans. Veh. Technol. 2010; 59: 1011–1017. doi: 10.1109/TVT.2009.2035131.
- 3. Yen CM, Chang CJ, Wang LC. A Utility-Based TMCR Scheduling Scheme for Downlink Multiuser MIMO-OFDMA Systems. IEEE Trans. Veh. Technol. 2010; 59: 4105–4115. doi: 10.1109/TVT.2010.2062546.
- 4. Wang CY, Ko CH, Wei HY, Vasilakos AV. A Voting-Based Femtocell Downlink Cell-Breathing Control Mechanism. IEEE/ACM Trans. Netw. 2014; In press.
- 5. Zhou L, Zhang Y, Song K., Jing W, Vasilakos AV. Distributed Media Services in P2P-Based Vehicular Networks. IEEE Trans. Veh. Technol. 2011; 60: 692–703. doi: 10.1109/TVT.2010.2102782.
- 6. Luo H, Ci S, Wu D, Wu J, Tang H. Quality-driven cross-layer optimized video delivery over LTE. IEEE Commun. Mag. 2010; 48: 102–109. doi: 10.1109/MCOM.2010.5402671.
- 7. Jiang T, Wang H, Vasilakos AV. QoE-Driven Channel Allocation Schemes for Multimedia Transmission of Priority-Based Secondary Users over Cognitive Radio Networks. IEEE J. Sel. Areas Commun. 2012; 30: 1215–1224. doi: 10.1109/JSAC.2012.120807.
- 8. Pahalawatta P, Berry R, Pappas T, Katsaggelos A. Content-aware resource allocation and packet scheduling for video transmission over wireless networks. IEEE J. Sel. Areas Commun. 2007; 25: 749–759. doi: 10.1109/JSAC.2007.070511.
- 9. Ji X, Huang J, Chiang M, Lafruit G, Catthoor F. Scheduling and resource allocation for SVC streaming over OFDM downlink systems. IEEE Trans. Circuits Syst. Video Technol. 2009; 19: 1549–1555. doi: 10.1109/TCSVT.2009.2026812.
- 10. Li P, Chang Y, Feng N. A cross-Layer algorithm of packet scheduling and resource allocation for multi-user wireless video transmission. IEEE Trans. Consum. Electron. 2011; 57. doi: 10.1109/TCE.2011.6018865.
- 11. Li F, Ren P, Du Q. Joint Packet Scheduling and Subcarrier Assignment for Video Communications Over Downlink OFDMA Systems. IEEE Trans. Veh. Technol. 2012; 61: 2753–2767. doi: 10.1109/TVT.2012.2195511.
- 12. Wang D, Toni L, Cosman PC, Milstein LB. Uplink Resource Management for Multiuser OFDM Video Transmission Systems: Analysis and Algorithm Design. IEEE Trans. Commun. 2013; 61: 2060–2073. doi: 10.1109/TCOMM.2013.032013.120053.
- 13. Yang Z, Wang X. Scalable Video Broadcast Over Downlink MIMO–OFDM Systems. IEEE Trans. Circuits Syst. Video Technol. 2013; 23: 212–223. doi: 10.1109/TCSVT.2012.2203216.
- 14. Moon H, Cox DC. Efficient power allocation for coded OFDM systems. IEEE Trans. Commun. 2009; 57: 943–947. doi: 10.1109/TCOMM.2009.04.060304.
- 15. Lee HW, Chong S. Downlink resource allocation in multi-carrier systems: frequency-selective vs. equal power allocation. IEEE Trans. Wireless Commun. 2008; 7: 3738–3747. doi: 10.1109/T-WC.2008.061110.
- 16.
ITU-T (2005) AVC: Advanced video coding for generic audiovisual services. ITU-T Recommendation H.264 and ISO/IEC 11496–10 (MPEG-4), International Telecommunications Union, Geneva, Switzerland.
- 17. Lai CF, Chao HC, Lai YX, Wan J. Cloud-assisted real-time transrating for http live streaming. IEEE Trans. Wireless Commun. 2013; 20: 62–70. doi: 10.1109/MWC.2013.6549284.
- 18. Qiu X, Chawla K. On the performance of adaptive modulation in cellular systems. IEEE Trans. Commun. 1999; 47: 884–895. doi: 10.1109/26.771345.
- 19. Liang YJ, Apostolopoulos JG, Girod B. Analysis of Packet Loss for Compressed Video: Effect of Burst Losses and Correlation Between Error Frames. IEEE Trans. Circuits Syst. Video Technol. 2008:;vol. 18, no. 7, pp. 861–874, July 2008. doi: 10.1109/TCSVT.2008.923139.
- 20. Li F, Liu G. Compressed-Domain-Based Transmission Distortion Modeling for Precoded H.264/AVC Video. IEEE Trans. Circuits Syst. Video Technol. 2009: 19: 1908–1914. doi: 10.1109/TCSVT.2009.2031457.
- 21. Yu W, Lui R. Dual methods for nonconvex spectrum optimization of multicarrier systems. IEEE Trans. Commun. 2006; 54: 1310–1322. doi: 10.1109/TCOMM.2006.877962.
- 22.
Seong K, Mohseni M, Cioffi JM. Optimal Resource Allocation for OFDMA Downlink Systems. Proc. IEEE ISIT. Conf 2006.
- 23.
Bertsekas. Nonlinear Programming. Athena Scientific; 1995.
- 24. Song DG, Ye L. Cross-layer optimization for OFDM wireless networks-part II: algorithm development. IEEE Trans. Wireless Commun. 2005; 4: 625–634. doi: 10.1109/TWC.2004.843067.
- 25.
Bohge M, Gross J, Wolisz A. The potential of dynamic power and sub-carrier assignments in multi-user OFDM-FDMAa cells. Proc. IEEE GLOBECOM. Conf 2005.
- 26.
H.264 JM 18.4 Reference Software. [Online]. Available: http://iphome.hhi.de/suehring/tml/download/
- 27.
Rappaport TS. Wireless Communications: Principles and Practice. Upper Saddle River, NJ: Prentice-hall; 2002.
- 28. Jang J, Lee KB. Transmit power adaptation for multiuser OFDM systems. IEEE J. Sel. Areas Commun. 2003; 21: 171–178. doi: 10.1109/JSAC.2002.807348.