I’ve long been a DASH skeptic, for multiple reasons, including the fact that the standard was so broad so as to be almost unusable. That is, since DASH supports multiple codecs and container formats, there’s no mechanism to ensure compatibility. So, if Mozilla adds DASH playback support that decodes WebM encoded video in an MPEG-2 transport stream, and Elemental produces an encoder that outputs DASH-compatible video using the H.264 codec and fragmented MP4 format (fMP4), there’s no compatibility. The video won’t play.
Well, help is on the way. On June 19, the DASH Industry Forum (DASH-IF) released DASH-AVC/264, a spec within a spec, that according to the release, “recommend[s] using a subset of MPEG-DASH, with specific video and audio codecs in order to promote interoperability among deployments in the industry.” Basically, the group decided on the H.264/AAC codec pairing for content and the fMP4 container format. According to an article in Streaming Media Magazine, the actual publication of the specification is expected on July 13, with conformance software and reference clients released around the same time.
The DASH-IF hosted a conference call on June 27. As detailed in the Streaming Media article, questions asked at the conference call revealed a good deal of antipathy against Apple’s HTTP Live Streaming (HLS), which is DASH’s most significant competitor, and the reigning incumbent, at least for delivery of adaptive streams to mobile devices. However, according to comments made at the conference, Apple was part of the standards-creation process, though the Cupertino-based company has been notably quiet about their plans to support DASH.
In contrast, Microsoft confirmed that they will support DASH in Internet Explorer 11. Specifically, according to Dr. Iraj Sodagar, a Microsoft employee and DASH-IF official, “What was announced yesterday at the Microsoft Build conference is the fact that Internet Explorer 11 will support Media Source Extensions and Encrypted Media Extensions.” As Tim Siglin, author of the Streaming Media article explained, “the use of Media Source Extensions (MSE) and Encrypted Media Extensions (EME) will allow browsers to support HTML5-based playback of DASH content. In addition to the announcement around IE11’s support of EME and MSE, the DASH-IF team also noted that an upcoming version of Chrome will support EME.”
What about Mozilla, or support for DASH in Android or the Flash Player? No one knows. Firefox doesn’t yet support H.264 playback (unless otherwise available within the operating system) and has raised issues about potential IP within MPEG-2 transport streams, which shouldn’t be a problem since DASH-AVC/264 uses the fMP4 wrapper. But until we hear something from these companies, we just don’t know.
Analysis
To date, DASH has been a solution for closed systems, usually implemented in mobile apps or via custom players on computers. It hasn’t been used for general-purpose playback because general-purpose playback doesn’t exist.
On computers, general-purpose playback can come from two directions, browsers or plug-ins. Since Microsoft isn’t planning on incorporating DASH support until IE 11, which isn’t yet shipping, ubiquitous browser support for DASH is nowhere close. Adobe could change the world tomorrow by incorporating DASH playback into Flash, but they’re previously indicated that this feature will be reserved for their premium playback platform, Primetime.
Even if Adobe changed course, and introduced DASH playback within the free Flash Player, which I think is very likely, that still would only replace DASH for Flash in the desktop market. You’d still have to deliver HLS to iOS devices and find a solution for Android.
Overall, the DASH-AVC/264 spec makes it simpler for streaming producers using apps and custom players to find encoders that produce compatible video for their apps and custom players. This takes care of the extreme top of the pyramid, high-volume publishers of premium content, but does little to help producers who rely on native browser support for video playback. Until Adobe announces that Flash will support DASH, and Apple and Google make their intentions known for their respective mobile operating systems, it’s still tough to get excited about DASH.