HTTP adaptive streaming with indoors-outdoors detection in mobile networks

by   Sami Mekki, et al.
HUAWEI Technologies Co., Ltd.

In mobile networks, users may lose coverage when entering a building due to the high signal attenuation at windows and walls. Under such conditions, services with minimum bit-rate requirements, such as video streaming, often show poor Quality-of-Experience (QoE). We will present a Bayesian detector that combines measurements from two Smartphone sensors to decide if a user is inside a building or not. Based on this coverage classification, we will propose an HTTP adaptive streaming (HAS) algorithm to increase playback stability at a high average bitrate. Measurements in a typical office building show high accuracy for the presented detector and superior QoE for the proposed HAS algorithm.



There are no comments yet.


page 1

page 2

page 3

page 4


Online Learning for Robust Adaptive Video Streaming in Mobile Networks

In this paper, we propose a novel algorithm for video quality adaptation...

Optimizing Adaptive Video Streaming in Mobile Networks via Online Learning

In this paper, we propose a novel algorithm for video rate adaptation in...

A Comparative Case Study of HTTP Adaptive Streaming Algorithms in Mobile Networks

HTTP Adaptive Streaming (HAS) techniques are now the dominant solution f...

Kernel-Based Adaptive Online Reconstruction of Coverage Maps With Side Information

In this paper, we address the problem of reconstructing coverage maps fr...

Open GOP Resolution Switching in HTTP Adaptive Streaming with VVC

The user experience in adaptive HTTP streaming relies on offering bitrat...

Evaluation of the Performance of Adaptive HTTP Streaming Systems

Adaptive video streaming over HTTP is becoming omnipresent in our daily ...

NeuSaver: Neural Adaptive Power Consumption Optimization for Mobile Video Streaming

Video streaming services strive to support high-quality videos at higher...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

I Introduction

In 2016, video streaming generated 60% of the global IP traffic in mobile networks [1]. The lion’s share of this traffic was produced by HTTP Adaptive Streaming (HAS) technologies [2], according to the Dynamic Adaptive Streaming over HTTP (DASH) standard [3] or the HTTP live streaming (HLS) draft [4]. With HAS, a video stream is encoded in multiple qualities and segmented into a number of small files. Each of these so-called segments or chunks contains an approximately constant duration of video and is downloaded by the client via the HTTP protocol. The client employs a bitrate adaptation algorithm, called HAS policy, that controls quality and request time according to the filling level of its local playback buffer and according to the measured throughput.

Although HAS policies are designed to cope with some throughput variation they often fail in mobile networks [5, 6]. Depending on the current user location, mobile throughput may change drastically as a result of physical effects during radio propagation. While the client’s playback buffer typically protects the stream from short channel outages caused by Fast Fading, slow effects such as Path Loss and Shadowing can cause much longer throughput decreases. Being unaware of the state of the wireless channel, most HAS policies may react too late and not aggressive enough to compensate for such long degradations of wireless throughput. This is a common case if a user is obstructed by a large obstacle or moves inside a tunnel or a building [5]. The target of this paper, is to provide a fast and aggressive HAS decision if (and only if) the user’s current mobile coverage requires it.

I-a Related work

HAS policies can be classified according to their input dynamic. Throughput-based policies adapt according to measured TCP throughput, which requires a sufficient number of probes in order to obtain a reliable observation

[7]. On the other hand, buffer-based policies [8, 9] adapt the requested bitrate according to the client’s playback buffer.

Since it takes a long time until a coverage loss affects application-layer buffers and TCP throughput, the mobile streaming community started to include information from lower protocol layers into HAS policies. While [6] obtains the link-layer throughput directly from the LTE scheduling grant, the authors of [10, 5] decided to adapt to the received signal power. Although it cannot be directly translated into throughput, signal power provides an accurate measurement of the current coverage situation and is readily available at the application layer of modern Smartphones without additional battery consumption.

I-B Main contributions

Following the idea of characterizing a user’s coverage situation by signal power, we go a step further. In addition to the signal power received from the cellular modem, we use information from the Smartphone’s localization sensors, e.g., its Global Navigation Satellite System (GNSS) receiver, to indicate a coverage loss. We will provide strong experimental evidence that this combination highly increases the estimation accuracy compared to using cellular signal power alone.

Briefly, the contributions of this work are as follows:

  • Indoors-outdoors detector: In Section III, we present a Bayesian detector that combines signal measurements from the cellular and GNSS receiver. The result is a binary estimate (i.e., indoors or outdoors) of the user’s coverage situation in real time.

  • Indoors-outdoors-aware HAS policy: In Section IV, we apply the indoors-outdoors detector described in Section III to improve the performance and stability of a classic adaptive streaming policy [8].

  • Experimental verification: In Section V, we present the setup and results of our measurement campaign.111A video illustrating the measurement scenario and the QoE gain for adaptive streaming is available at The results consistently show substantial gains in video bitrate, fluency and stability, compared to the baseline policy [8].

These results demonstrate that accounting for the coverage context of a user is a promising approach for designing adaptive streaming policies.

Ii System model

According to the DASH standard [3], a streaming client employs an HAS algorithm to choose a video quality. For this quality, the client progressively downloads each segment until the maximum buffer occupancy () is reached. The QoE eventually depends on the filling level of this playback buffer, which is defined by the throughput of the radio link.

Based on measurements of the received signal power, we compute the throughput according to Shannon’s equation as follows. Achievable rate at time index is given by


where is the signal to interference noise ratio (SINR) and is the user effective bandwidth which corresponds to of the total bandwidth in the 4G standard [11]. We assume that where is the received signal power measured over bandwidth and is the sensitivity threshold, above which the receiver is capable of detecting and processing the received signal. We truncate the value of at dB since the highest modulation scheme is obtained at SINRdB.

The received signal power is available at the application layer of most mobile devices [12]. Without loss of generality, we assume that interference is included in the sensitivity threshold. Since the studied mobile devices may associate to a different mobile network type any time, thresholds for 2G, 3G and 4G have to be considered. We summarize all used parameters in Table I. Details are provided in the standards [13, 14, 15] for 2G, 3G and 4G, respectively.

Parameters 2G 3G 4G
Received power RSSI RSCP RSRP
Measured bandwidth kHz MHz kHz
Data bandwidth kHz MHz MHz
Sensitivity threshold [dBm/] -104 -106 -94
TABLE I: Parameters for the studied mobile networks

Using the obtained SINR, the cell throughput is then computed over the complete bandwidth of the respective network type as in (1). Computing this quantity for the complete data set provides the empirical CDF in Figure 1.

To obtain the throughput for a single user, we assume a round-robin scheduling policy where all users are served equally. Thus, the total cell throughput is equally shared among users as where . Note that we have to limit our study to , since this is the maximum number of users per channel in 2G [16].

Fig. 1: Empirical CDF of the cell throughput in the downlink

The received signal power was measured over several days inside and outside of a typical multi-floor office building in downtown Paris, France. Off-the-shelf mobile devices were used, namely five HUAWEI Mate 8 Smartphones running Android 6.0 Marshmallow [17] with different network providers. The Smartphones automatically selected all transmission (e.g., Physical-layer rate) and associated to 2G, 3G, or 4G networks over the course of the measurements. All data was recorded at the application of these devices without direct access to the mobile networks. In addition to signal power, localization data and ground truth about the user’s position (indoors or outdoors) were recorded.

Iii Indoors-Outdoors detection

In this section, we present our Bayesian classifier for a user’s coverage situation. Our algorithm detects if a user is indoors or outdoors, based on the a posteriori information from Smartphone sensors. The first input is the received signal power as provided by the cellular modem according to [18]. The second input is the confidence radius of the location, provided by the active localization sensor, e.g., the Smartphone’s global positioning system (GPS) chip set. In the following, we will discuss the statistics of both input variables and describe a method to combine them for indoors-outdoors detection.

Iii-a Analysis of received signal power

Figure 2

shows the empirical cumulative distribution function (CDF) of the received signal power measurement, separated by the recorded ground truth (i.e., indoors or outdoors). The significant offset between the two CDFs results from substantial differences in radio propagation, namely reflection, diffraction, and attenuation


. Based on these statistics, we conclude that received signal power can be used to classify the user’s coverage situation (i.e., either indoors or outdoors). We will proceed using the empirical probability density functions (pdf) of the received power, obtained by differentiating previously recorded CDFs.

Fig. 2: Empirical CDF for measured received signal power

Iii-B Analysis of confidence radius

To improve the detection performance, we propose the use of the confidence radius as provided by the localization system of mobile devices, e.g., [20]. It is important to highlight that confidence radios is the sole localization parameter used by our algorithm. Other parameters such as user position, speed and altitude are not required.

The empirical analysis of the confidence radius shows sparse data for indoors and outdoors measurements as in Figure 3. Such quantization is common in GPS chip sets and can be overcome by curve fitting, as shown by the dashed lines. The resulting curves will be used in the following algorithm

Iii-C Data fusion and detection

The indoors-outdoors detection is based on maximum a posteriori (MAP) estimation, where the unknown status maximizes the a posteriori probability under a given observation. The input from the two sensors is combined by computing a joint a posteriori probability based on the distributions of (i) the received signal power and (ii) the confidence radius.

We denote by and the received signal power measure and the confidence radius value, respectively, at time index . The a posteriori probability is given by , where . Following Bayes’ law, the a posteriori probability becomes


Unlike for received power and confidence radius, no a priori information is available on and the two input variables are obtained from physically independent sensors. Consequently, the a posteriori probability is proportional to the product


of the conditioned measurements. Here, is the direct observation based on received signal power and is the direct observation based on the confidence radius. Finally, the a posteriori probability can be expressed simply as


where and are the observations computed from received power and location measurements, as described previously.

The coverage classification (i.e., indoors or outdoors) is then given by the most probable value of , i.e., the value maximizing the a posteriori probability.

Fig. 3: Empirical CDF for measured confidence radius

Iv Adaptive streaming

In this section we will describe an HAS policy based on coverage classification.

Iv-a Adaptation based on buffer occupancy and segment size

A common buffer-based HAS policy is described in [8, Section VII]. This policy is employs a segment map which is defined in the space and , where is the mean segment size of representation , , as depicted by the black line in Figure 4. The map is defined by two thresholds: i) an upper threshold that drives the policy to select the maximum quality available () once the instantaneous buffer occupancy , at time at the end of the download of the segment, , surpasses it and ii) a lower threshold that dictates the lowest available quality () if . In the buffer region , the policy may use any non-decreasing function to select the quality of the next segment to be downloaded [8]. We will refer to this adaptation principle as the baseline for the remainder of the paper.

Iv-B Indoors-Outdoors aware HTTP Adaptive Streaming

We present the HAS policy Indoors-Outdoors aware Buffer Based Adaptation (IOBBA), based on coverage classification. IOBBA aims at minimizing the re-buffering events for mobile streaming users that move into an area with poor coverage, e.g., inside a building. To this end, the HAS policy has to react faster to throughput decreases in order to avoid buffer underruns. Moreover, the policy should increase the video bitrate conservatively, in order to avoid video rate oscillations at the edge of a poorly covered region. Both design principles should add a minimum penalty to the average video bitrate. Following these targets, we made two modifications to the baseline algorithm [8, Section VII].

Fig. 4: Segment map of the baseline (black line) and of the proposed IOBBA policy (red line)

Iv-B1 Aggressive response to reduced buffer occupancy

Instead of using a linear function for the buffer region , we employ the function , where and can be computed at the boundary values and . This exponential function is illustrated by the red line in Figure 4. To increase stability and to reduce the probability of buffer starvation, we use a constant value for . This allows for a fast reaction to the immediate buffer depletion, which is a direct consequence of the throughput reduction, when moving into a building. This updated segment map is used when the user location is detected indoors. In this way, the user will experience smoother buffer depletion and thus a reduced probability of re-buffering events. To prevent further loss in the mean video bit-rate, a linear function is used instead, as soon as the user’s location is detected outdoors.

Iv-B2 Conservative video bit-rate increase

Indoors, the IOBBA policy increases video bitrate more conservatively than outdoors. While the user is considered to be indoors, video bitrate is only increased after sequential requests upgrade requests have been indicated by the segment map. With this principle, video bitrate oscillation becomes less likely.

V Measurement results

We experimentally evaluate various QoE factors for IOBBA. For each factor, we study the difference to ground truth and to a baseline algorithm from literature.

V-a Methodology

To study the effect of estimation error on the QoE, we study IOBBA-True where our HAS policy from Section IV operates on the ground truth and IOBBA-Detected where the result of our MAP estimator is used. During our one-week measurement campaign, we obtained 35 traces files for a variable number of mobile users . Furthermore, we investigated the maximum buffer occupancy . This factor is important as it may substantially differ between different streaming services (e.g., tens of seconds for live streaming, hundreds of seconds for video-on-demand).

To parameterize our HAS policy, we computed the lower threshold dynamically calculated as in [8] when the user is outdoors. Indoors, we used the constant value . The upper threshold is constant with for all policies and the video rate increase threshold is .

As streaming content, we have chosen the open movie Big Buck Bunny (BBB) [21], which is recommended in the measurement guidelines of the DASH Industry Forum [22]. BBB is of : minutes duration and high motion. We encoded the movie with H.264 at 24 frames per second, using MP4 containers at a segment duration of 4 seconds. Following the recommendations of [23]

, we selecting the video bit-rate levels according to the quantiles of the total throughput CDF as in Table


encoding rate (kbps)
Quantiles of Figure 1
1 320240 129 0.1
2 480360 378 0.2
3 854480 578 0.25
4 1280720 1536 0.4
5 19201080 3993 0.5
TABLE II: Video content characteristics

As QoE factors we studied:

  1. Mean selected video rate, averaged over the video duration.

  2. Re-buffering frequency, which is the number of re-buffering events over the video duration and

  3. Adaptation frequency, which accounts for the amount of video rate changes over the video duration.

For each metric, we present arithmetic means over all measurements and the standard error at a confidence level of


V-B Accuracy of indoors-outdoors detection

The detection is performed by the MAP estimator defined in Section III, based on the pdfs from previous measurements.

The confusion matrix in Table

III shows the accuracy of this estimation when only the received power is used as an input.

True state
Indoor Outdoor
Indoor 0.8256 0.083
Outdoor 0.1744 0.917
TABLE III: Confusion matrix for indoors-outdoors detection based on received power

Including the confidence radius as a second input leads to the detection accuracy in Table IV.

True state
Indoor Outdoor
Indoor 0.9496 0.0911
Outdoor 0.0504 0.9089
TABLE IV: Confusion matrix for indoors-outdoors detection based on data fusion

This clearly shows the benefit of including this second variable as a accuracy increase for the indoor case. Over all cases, the MAP estimation over both variables reaches an accuracy of .

V-C IOBBA performance

Figure 8 shows several QoE factors for an increasing number of users .

(a) Mean video bit-rate vs.
(b) Adaptation frequency vs.
(c) Re-buffering frequency vs.
Fig. 8:

Experimental results for 95% confidence intervals with

(a) Mean video bit-rate per
(b) Adaptation frequency per
(c) Re buffering frequency per
Fig. 12: Experimental results for 95% confidence intervals with 4 users

As increases, the bandwidth-share assigned to each user is reduced and therefore the mean video bit-rate is diminished. Additionally, the frequency of re-buffering events is increased since the lower the throughput of each user the higher the probability of a buffer underrun. For the adaptation frequency, we notice that using indoor-outdoor detection increases the stability for increasing . The baseline algorithm, however, suffers from an almost constant fluctuation of video quality even at high . It is interesting that imperfect estimation shows a slight drawback for adaptation frequency but is insignificant for the other studied QoE factors. We can conclude that, compared to the baseline, IOBBA improves the re-buffering frequency as well as adaptation frequency by . This QoE gain comes only at a marginal cost for the mean video bit-rate.

Figure 12 shows the studied QoE factors for an increasing target buffer level. A larger maximum buffer ensures that the video bit rates are sufficiently distant from each other in the segment map, thus reducing the probability of bitrate oscillation. Of course, the higher the maximum buffer occupancy, the higher the average buffer occupancy per stream, and therefore, the lower the re-buffering frequency.

We should mention that the mean video bit-rate is inversely proportional to the maximum buffer occupancy which is due the fact that the segment maps of larger buffers have a lower response rate to throughput increases. The larger the buffer the more time is spent to achieve with segments of the lowest quality, which explains the reduction of IOBBA’s mean bitrate in Figure (a)a.

On the other hand, the smaller the maximum buffer occupancy, the smaller the distances between buffer values that indicate video bit-rate changes and, thus, the larger the adaptation frequency. This is why IOBBA outperforms the baseline by to in adaptation frequency and by to in terms of re-buffering. All in all, this is a substantial QoE gain at a reasonable penalty for the average bitrate.

Vi conclusion

In this paper, we extended a common HTTP adaptive streaming (HAS) algorithm by a Bayesian coverage estimator. The resulting HAS policy, called IOBBA, aggressively reduces the requested video quality if the user is estimated to enter an area of poor signal coverage (e.g., indoors). Then the policy stays conservative, until an area of high coverage is detected (e.g., outdoors).

The coverage estimation requires no knowledge of user location and makes no use coverage or map data. The required input is entirely collected during run time, from two Smartphone sensors at the application layer. Estimation accuracy is in the order of 95%, which is sufficient for high QoE gains.

Our experiments in a typical downtown office building show substantial improvements in video bit-rate, smoothness and stability, compared to a conventional HAS policy. This clearly demonstrates that making adaptive streaming aware of the user’s current coverage situation can highly improve the QoE of mobile streaming.


  • [1] Cisco, “Visual networking index: Global mobile data traffic forecast update, 2016–2021,” White Paper, Feb. 2017.
  • [2] Sandvine, “Global internet phenomena: Latin america & north america,” report, Jun. 2016.
  • [3] ISO/IEC, “Dynamic adaptive streaming over HTTP (DASH),” International Standard 23009-1:2014, May 2014.
  • [4] R. Pantos and W. May, “HTTP live streaming,” IETF, Informational Internet-Draft 2582, Sep. 2011. [Online]. Available:
  • [5] E. Liotou, T. Hobfeld, C. Moldovan, F. Metzger, D. Tsolkas, and N. Passas, “Enriching http adaptive streaming with context awareness: A tunnel case study,” May 2016, pp. 1–6.
  • [6] X. Xie, X. Zhang, S. Kumar, and L. E. Li, “piStream: Physical Layer Informed Adaptive Video Streaming over LTE,” in Proc. ACM Int. Conf. on MobiCom., September 2015.
  • [7] Z. Li, X. Zhu, J. Gahm, R. Pan, H. Hu, A. C. Begen, and D. Oran, “Probe and Adapt: Rate Adaptation for HTTP Video Streaming At Scale,” IEEE J. Sel. Areas Commun., vol. 32, no. 4, April 2014.
  • [8] T.-Y. Huang, R. Johari, N. McKeown, M. Trunnell, and M. Watson, “A Buffer-based Approach to Rate Adaptation: Evidence from a Large Video Streaming Service,” in Proc. ACM Conf. on SIGCOMM, August 2014.
  • [9] K. Spiteri, R. Urgaonkar, and R. K. Sitaraman, “BOLA: Near-optimal bitrate adaptation for online videos,” in IEEE Int. Conf. on INFOCOM., April 2016.
  • [10] W. Bao and S. Valentin, “Bitrate adaptation for mobile video streaming based on buffer and channel state,” Jun. 2015.
  • [11] S. Sesia, I. Toufik, and M. Baker, LTE, The UMTS Long Term Evolution: From Theory to Practice.   Wiley Publishing, 2009.
  • [12] Google Inc., “Signal strength,” 2016, URL verified on March 12, 2017. [Online]. Available:
  • [13] E. T. S. I. (ETSI), “Digital cellular telecommunications system (Phase 2+); Radio transmission and reception,” GSMTS, Tech. Rep. GSM 05.05 Version 5.0.0, March 1996.
  • [14] ——, “Universal Mobile Telecommunications System (UMTS); User Equipment (UE) radio transmission and reception (FDD),” 3GPP, TS 25.101 version 11.3.0 Release 11, Nov. 2012.
  • [15] ——, “LTE; Evolved Universal Terrestrial Radio Access (E-UTRA); User Equipment (UE) conformance specification; Radio transmission and reception; Part 1: Conformance testing,” 3GPP, TS 36.521-1 version 13.0.1 Release 13, May 2016.
  • [16] ——, “Digital cellular telecommunications system (Phase 2+); Physical layer on the radio path; General description,” GSMTS, Tech. Rep. GSM 05.01 Version 5.0.0, May 1996.
  • [17] Google Inc., “Android 6.0 Marshmallow,” 2016, URL verified on March 12, 2017. [Online]. Available:
  • [18] E. T. S. I. (ETSI), “LTE; Evolved Universal Terrestrial Radio Access (E-UTRA); Physical layer - Measurements,” 3GPP, TS 36.214 version 9.1.0 Release 9, April 2010.
  • [19] A. Goldsmith, Wireless Communications.   New York, NY, USA: Cambridge University Press, 2005.
  • [20] Google Inc., “Location strategies,” 2016, URL verified on March 12, 2017. [Online]. Available:
  • [21] Big buck bunny, Blender Foundation. URL accessed on December 22, 2016. [Online]. Available:
  • [22]

    DASH Industry Forum, “Guidelines for Implementation: DASH-AVC/264 Test cases and Vectors,”

    report, Jan. 2014.
  • [23] ITEC - Dynamic Adaptive Streaming over HTTP. URL accessed on December 22, 2016. [Online]. Available: