Adaptive video through MPEG-DASH

Motivation

Adaptive streaming is based on the detection of consumers content capabilities to adapt the flow based on, among others, the bandwidth. The objective is to provide the best quality in each moment depending on the particular context of each client.

Nowadays, the most important example of adaptive streaming is DASH [1], an ISO standard for the transmission of live and on demand content. DASH uses HTTP for data transmission and is based on the segmentation of multimedia files. In DASH, each file is encoded with different qualities which are split into little parts called segments. In order to access multimedia content, clients select the quality of each content segment.

Clients download the segments in a sequential way using the HTTP protocol. Segments are displayed in order, so if there are not problems, the final result will be an uninterrupted playback. The adaptation process is managed by the client, which implies that the client carries out the calculations of the download times of the segments to decide the convenience of a change of quality level. Figure 1 shows an example about exchange of flows over time.

Figure 1. Evolution of quality levels of flows over time

To carry out that adaptation, DASH clients use an algorithm that depends on the type of implementation. In general, those algorithms are based on the calculation of the average bandwidth of the video. Although this approach usually works rather well, it can cause interruptions when there are peaks in the video bandwidth (due to the characteristics of the video).

Overview

DASH defines a manifest file, called MPD (Media Presentation Description), which describes the multimedia content, different qualities and how the content is divided into segments. The segments must start with a key-frame, this is a complete image, to remain independent of the rest. Finally, segments are encoded in the desired format and are hosted on a web server.

In recent years, lots of publications related to DASH have appeared, several of them focused on the optimization of the standard and the combined use with other solutions to improve the Quality of Experience of users [2][3]. Regarding the practical part, there are different implementations of DASH. Among the most used we find: Apple HTTP Live Streaming, Microsoft Smooth Streaming and Adobe Systems HTTP Dynamic Streaming. Considering the existing proposals of use of DASH, the proposal that allows an in-depth study for its open, free and patent-free nature is Webm [4]. Webm is based, in turn, in three fundamental components: the video container Matroska, the audio codec Vorbis and the video codec VP9. Despite other studies [5], which have to deduce the behaviour of the evaluated systems, the use of standards and open source tools allow to carry out further studies.

Within the Multimedia Communications Group one of the lines of research and development is the study and implementation of the DASH standard. For example, it has been proposed the use DASH together with other protocols such as FLUTE for the transmission of contents in hybrid networks [6], as shown in the following figure:

Figure 2. Hybrid architecture FLUTE/DASH for video transmission

After the sampling and the encoding processes, the video is segmented according to a given segmentation policy, generating DASH segments and FLUTE blocks. The information related to the DASH segmentation is indicated in the MPD. Then, clients can access the segments through a FLUTE session and a DASH server. The flexibility regarding the segmentation of a video in FLUTE and DASH allows combining both technologies to download video frames. Users receive the different symbols that compose each block and rebuild the corresponding GoPs. The parity symbols received are used to recover the source symbols lost. If after applying AL-FEC decoding, some packets have not been recovered, clients are able to request only the frames lost to the DASH server through a unicast connection. As mentioned, clients know the information referred to the DASH server by means of the manifest file (MPD), which identifies the alternative locations for each segment in their respective segment information descriptions.

Regarding the performance of the standard, it has been proposed an algorithm called Look Ahead that more accurately calculates the bandwidth of the video at each instant of time to avoid interruptions in the video, which worsen the QoE of the users. The objective is to have a continuous reproduction without interruptions, maximizing the quality of the video reproduced, therefore, maximizing the quality with which each segment is reproduced [7][8][9]. On the other hand, DASH also introduces new challenges, especially on the receiver side when the last jump is Wi-Fi and it is also shared by a large number of devices. In these types of settings, such as event halls, stadiums and means of transport (buses, planes, boats …) it is common to offer video streaming services related to the activity or entertainment itself. In these environments, video players compete with each other for access to the medium, which has adverse effects such as instability and unfairness in the distribution of available bandwidth. In addition to this problem, the use of Wi-Fi networks introduces another factor of variability and unfairness when accessing to content. In order to mitigate the problems introduced by DASH in some scenarios, the Server and Network Assisted DASH (SAND) technology arises, defined in ISO / IEC FDIS 23009-5: 2016 – Part 5.

In the literature, there are DASH-SAND-based solutions to carry out the coordination of the bandwidth resource between video players that are in the same Wi-Fi network with a high concentration of users. For example, [10] proposes a solution that uses the status information of all the devices to offer an alternative for estimating the bandwidth. With this estimation, while some clients reduce their playback bitrate, the rest have more options to access the medium, thus improving the average Quality of Experience (QoE) of users.

References

[1] ISO/IEC 23009-1, Dynamic adaptive streaming over HTTP (DASH) – Part 1: media presentation description and segment formats, 2012.
[2] 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 HEVC video over 4G/LTE networks,” IEEE Communication Letters, vol. 20, no. 1, Nov. 2016.
[3] S. Lee, K. Youn, and K. Chung, “Adaptive video quality control scheme to improve QoE of MPEG DASH,” in Proc. of IEEE Int. Conference on Consumer Electronics (ICCE), Las Vegas, NV, Jan. 2015.
[4] Webm official webpage, available at: http://www.webmproject.org.
[5] Akhshabi, S. Narayanaswamy, A. C. Begen, C. Dovrolis, “An experimental evaluation of rate-adaptive video players over HTTP,” Signal Processing: Image Communication, vol. 27, no. 4, pp. 271-287, Apr. 2012.

Related publications

[6] R. Belda, I. de Fez, F. Fraile, P. Arce, and J. C. Guerri, “Hybrid FLUTE/DASH video delivery over mobile wireless networks,Transactions on Emerging Telecommunications Technologies, vol. 25, no. 11, pp. 1070-1082, 2014.
[7] R. Belda, I. de Fez, P. Arce, and J. C. Guerri, “Look Ahead: a DASH adaptation algorithm,” in Proc. of the IEEE Int. Symp. On Broadband Multimedia Systems and Broadcasting (BMSB), Valencia (Spain), Jun. 2018, article no. 158.
[8] R. Belda, I. de Fez, P. Arce, and J. C. Guerri, “Algoritmo de adaptación DASH sensible al tamaño del segmento,” in Proc. of the Simposium Nacional de la Unión Científica Internacional de Radio (URSI), Granada (Spain), Sep. 2018, article S7.1.3.
[9] R. Belda, I. de Fez, P. Arce, and J. C. Guerri, “Look ahead to improve QoE in DASH streaming,” Multimedia Tools and Applications, vol. 79, pp. 25143-25170, 2020.
[10] R. BeldaI. de Fez, and J. C. Guerri, “Transmisión inalámbrica multimedia coordinada con DASH-SAND”, in Proc. of the Simposium Nacional de la Unión Científica Internacional de Radio (URSI), Málaga (Spain), Sep. 2020.