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