The Two Ways to Get Video Across the Internet

In all the internet video out there, there are basically two methods of delivery: Progressive download and adaptive bit rate streaming.

Progressive Download

Today, the majority of internet video is progressively downloaded, including YouTube, Vimeo, Hulu and yes, pornography. PD video is usually evident to the end user because the user interface shows a graphical indication of the download progress in the slider bar underneath the video.

Video that is progressively downloaded is delivered at a higher data rate than the decoding process consumes it. Modern PD video systems front-load this process. The following graph shows the network load of an 80-second long YouTube video — note that the entire video is transmitted in about 40 seconds:

graph that shows the network load of an 80-second long YouTube video

Adaptive Bit Rate

Streaming using Adaptive Bit Rate, or ABR, video is not as widely implemented today. Microsoft Smooth Streaming and Apple’s HTTP Live Streaming are both based on ABR concepts, and ABR video is used by Blockbuster, Netflix and the new AppleTV device. I would expect that the use of ABR video will grow over time, specifically driven by the emergence of more commercial entertainment video.

ABR video is sent across the network in a more sophisticated manner than PD video. With ABR video, the server initially sends the client a “manifest file” that acts as a table of contents into the video. The video itself is divided into short fragments, each lasting between one and four seconds. The client requests each fragment of video from the server shortly before it is needed for playback. Every fragment is available on the server in one of several bit rates, and it is possible for the client to switch bit rates at fragment boundaries — so based on whether the previous fragment arrived early, on time or late, the client can adjust its request for the next fragment. The result is a system that can dynamically adjust to varying network congestion levels. Furthermore, the client can allow the user to seek randomly in the video, without needing to have the entire video cached.

Adaptive bit rate video is more appropriate than PD video for commercial entertainment for several reasons:

  • The overall quality will always be the best possible for a given user’s network connection, so, therefore, it maximizes quality of experience.
  • The files can be longer. Progressive download doesn’t work as well for clips that are longer than about 20 minutes because the size of the temporary file begins to be problematic — especially when you’re delivering the video to a small embedded device like a mobile phone, where only limited storage is available.
  • ABR is perceived by content owners to be more secure than PD because content owners don’t like their content to be cached to the user’s hard drive, even temporarily and even if encrypted. ABR avoids this.