Page 10 - EngineerIT October 2022
P. 10

ICT VIDEO STREAMING


           Data Rate Adaptation Limitations


                      of Video Streaming: Part 2





                                                    By Dr Keith Ferguson




            his is second part of a two-part article on the Internet protocols and standards used for
            audio-visual streaming including their associated limitations. Here in Part 2, we review
        Tthe newer techniques that are in common use today and have attempted to alleviate the
        buffering problem. The limitations on their success are considered here. (Read part 1 in the
        September edition of EngineerIT)

        HTTP Streaming
        HTTP (Hyper-Text Transport Protocol) servers are the cornerstone of nearly all web application
        with many choices of web browsers (and other web services) available in the market to access
        the data from these servers. At its most basic, the HTTP server – web browser exchange
        consists of the browser ‘asking’ for files from the server and then interpreting what to do with
        the files. It is a ‘pull’ type protocol. The content of these files is typically HTML (Hypertext
        Markup Language) and/or Javascript code that references text, formatting information, links
        to other web sites, images and many types of data. HTTP uses TCP (Transmission Control
        Protocol) as its base protocol and therefore is not suited to low delay applications. But sending
                                                                                  Keith Ferguson
        files, typically found on web pages, of small to large sizes is what it has been optimised for.  Keith Ferguson
           Of particular interest is that it is session-less allowing the routers across the Internet to
        cache the files. The implication is that a file that has been requested by another user on the   recently included the fMP4 format for
        same router path does not require the file to come directly from the HTTP server but can be   compatibility or convergence with DASH.
        delivered from the routers’ caches. This has spurred the growth of ‘mirrored’ HTTP servers   Other than Apple Inc applications that
        that act as globally distributed content caches, to seamlessly deliver to users’ common   only support the HLS delivery protocol,
        content ‘closer to home’. The implementation of HTTP servers is a mature technology and has   nearly all other streaming service
        proved to be robust. Herein is the heart of the matter that enables the most desirable feature   providers support both DASH and HLS.
        of massive scalability. For simplicity, secure protocol implementations e.g. HTTPS are not   Implementations are widespread across
        discussed.                                                                the industry from Content Distribution
           As HTTP is a file-based protocol, the source video is broken down into small-time   Network (CDN) providers (e.g. Akamai) to
        consecutive ‘clips’ referred to as segments. These are then encoded into small independent   the commonly known commercial service
        videos files. The file names, time duration and sequence number of these video files are   providers (e.g. Netflix, YouTube, Amazon
        listed in their sequence order within a playlist file. The video player/decoder embedded in   Prime, Disney+, Apple TV, etc.)
        the browser, fetches (‘pulls’) the playlist file and uses this to fetch each video file in sequence   There are other protocols that are
        order. These are decoded and rendered in the browser for the viewer. However, if there is   propriety solutions but have not gained
        our old friend, congestion, on the network then the decoder will not receive the next file fast   widespread acceptance because they are
        enough and the playback will stall while it buffers.                      not video and audio encoder agnostic.
           For congestion adaptation, the source video is not only encoded into one sequence of   These are Microsoft’s Smooth Streaming
        files but into several parallel time aligned sequences, each at a different data rate. When the   and Adobe’s HTTP Dynamic Streaming
        browser player/decoder is not receiving the files fast enough then it fetches the next time   primarily. However, their techniques are
        aligned video file from a lower data rate sequence and continues fetching files from the new   similar to HLS and DASH, and they have
        sequence that, hopefully, prevents stalling. Similarly, if all is going well and there is ‘head room’   participated in contributions to the DASH
        then a higher data rate may be switched to. Sounds good and works well most of the time. For   standard.
        completeness, let’s look at the standards for HTTP streaming.
                                                                                  HTTP Streaming Limitations
        International Standards for HTTP Streaming                                We need to dig a little deeper to
        There are two ‘flavours’ of HTTP streaming being DASH (Dynamic Adaptive Streaming over   understand when the HTTP adaptation
        HTTP) from the IETF (Internet Engineering Task Force) standards body (MPEG-DASH ISO/  techniques fail.
        IEC 23009-1:2019) and HLS (HTTP Live Streaming, doi:10.17487/RFC8216) originating from   Firstly, a quick diversion to the
        Apple Inc. DASH has adopted the fragmented MP4 (fMP4) container format (MPEG4 Part 14)   structure of encoded video. The ITU-T
        and HLS originally only used the MPEG Transport Stream (MPEG-TS) container but has more   (International Telecommunications Union -


                                                  EngineerIT | October 2022 | 8
   5   6   7   8   9   10   11   12   13   14   15