The State of Protocols and Formats 2014
This year marks the first time we’ve done a State of the Protocol and Formats in a Sourcebook, but it’s not the first time we’ve covered some of the TLAs -- three-letter acronyms, or four in some instances -- that you’ll read about later.
Even for streaming industry veterans, the alphabet soup of acronyms surrounding protocols and formats can get a bit thick. Common usage changes, as do the names sometimes, as witnessed in one extreme example this year with the advent of the oddly named DASH-AVC/264 (pronounced “dash dash A V C slash two six four”), which we will cover in this article.
Here, without further ado, is the current state of a number of protocols and media formats, as of early 2104.
Advanced video coding (AVC), also known as either H.264 (the International Telecommunications Unions, or ITU, standard) or MPEG-4 Part 10 (the MPEG standard), has been the go-to compression scheme for several years. Able to scale from lower bitrates to high-definition content, AVC is versatile enough to be used for low-latency scenarios (such as videoconferencing), traditional online delivery, on-demand video, and Blu-ray discs.
The protocol itself is more than 10 years old, and the days of AVC encoding in specialized hardware have been replaced with encoding and transcoding using general-purpose processing (GPP) such as a CPU, as well as multistream processing using graphics processor units (GPUs) that contain hundreds of processing cores.
AVC will be with us for at least another decade, if history is any indication: The MPEG-2 video codec is almost 20 years old, and yet both it and its transport protocol -- the MPEG-2 Transport Stream, or M2TS -- live on in today’s modern DVDs and broadcast equipment. M2TS forms the basis of both over-the-air broadcast as well as Apple’s HTTP Live Streaming (HLS), which uses M2TS as the transport stream for its AVC-based video encoding.
Speaking of M2TS and AVC, the industry ratified a delivery technology called Dynamic Adaptive Streaming over HTTP (DASH) in late 2011, attempting to solidify the industry’s ever-fragmenting approach to HTTP streaming delivery.
DASH and HLS both use AVC video encoding. They also both fragment multiple video streams, which are identical in content but differ in resolution and bitrate, into small 2–10-second fragments or segments. This fragmentation is done so that a traditional HTTP server, rather than a specialized media server, can deliver these segments as a sequential series of small files rather than relying on proprietary or less-popular protocols such as real-time transport protocol (RTP).
Accommodations have been made within the DASH specification to accommodate AVC coding via M2TS, as a way to attract Apple to throw in with the MPEG standards committee and toss aside HLS, but the majority of effort to date has focused on the use of fragmented MP4 files delivered without the need for M2TS as the transport stream.
Adobe, Microsoft, and other industry heavyweights have gotten behind DASH, with Microsoft the earliest adopter since the ISO base media file format and Microsoft’s Protected Interoperable File Format form the basis of both Smooth Streaming and, subsequently, DASH. Adobe announced initial support for DASH in early 2012, but it took the company until late September 2013 to finally announce that DASH will be fully supported across the entire Adobe ecosystem in 2014.
Wowza expects to have full DASH interoperability in its upcoming Wowza Media Server 4.0 release, meaning that the industry is finally near a point where a common codec, format, and delivery protocol provide the same type of interoperability for online video that the DVD did for optical disc media playback -- except for that pesky HLS problem, with the iPhone’s dominant market share of the U.S. smartphone market.
While HEVC might be getting most of the hype, H.264—particularly DASH-AVC/264—is receiving plenty of attention, with the DASH Industry Forum releasing a set of test cases and vectors in late 2013, with more to come in early 2014.
If one strips away the M2TS possibilities in DASH, limits the delivery to fragmented MP4, and narrows down the playback guidelines to a specific subset of resolutions and frame rates, what do you get? If you guessed DASH-AVC/264, give yourself top marks.
For those who don’t know what DASH-AVC/264 is, the DASH Industry Forum defines it as nothing less than “the future of video.” In essence, DASH-AVC/264 is a subset of DASH that attempts to address broadband video’s exploding popularity via a set of DASH encoding and decoding definitions that consumer electronics (CE) manufacturers can use to craft “a universal delivery format that provides end users with the best possible video experience by dynamically adapting to changing network conditions.”
In September 2013, the DASH Industry Forum published version 2.0 of its guidelines, which moved the high-definition baseline for CE manufacturers from 720p content playback to 1080p playback.
720p had initially been chosen, according to the initial guidelines released in May 2013, as a way to balance the need between compression efficiency, content availability, and support in existing devices that had been released prior to version 1.0 of the DASH-AVC/264 guidelines. 720p baseline video support used the Progressive High Profile Level 3.1 decoder and supported up to 1280x720p at 30 fps, but the new version 2.0 guidelines call for HD content “up to 1920x1080p and 30 fps is H.264 (AVC) Progressive High Profile Level 4.0 decoder.”
In addition, the guidelines also provide a way to handle standard definition (SD) content as certain CE devices may only be able to deliver using H.264/AVC Main Profile instead of High Profile required for HD content.
“[C]ontent authors may provide and signal a specific subset of DASH-AVC/264,” the guidelines state, “by providing a dedicated interoperability identifier referring to a standard definition presentation. This interoperability point is defined as DASH-AVC/264 SD.”
As of early 2014, the DASH Industry Forum is defining an additional set of use cases, which can be used to test DASH-AVC/264 compliance.
While DASH was intended to initially address only HD content, the question of how to move beyond “true HD” or 1080p to 2K and 4K content playback was not a particularly burning issue. But the advent of Ultra HD, often referred to as 4K, is back in the limelight in no small part thanks to CE manufacturers releasing quite reasonably priced Ultra HD monitors at the 2014 CES.