Media Streaming Evolution

Published: 19 September 2016
  • Dave Evans

    Technologist

As the echoes of the Last Night of the Proms fade from the Royal Albert Hall, delivered in surround sound for the third year running by BBC R&D, now feels like a great time to reflect on the progress made since our earlier experiments in surround radio broadcasting, of both the enabling technologies and internet streaming more generally.

Media Source Extensions (MSE)

MSE is a W3C specification which allows client-side JavaScript applications to construct media streams for dynamic playback via HTML media tags, enabling features such as bitrate adaptation to be controlled programmatically.

MSE is expected to reach Recommendation status with W3C this month, meaning that the first version has at least two independent implementations which pass each test in the associated test suite, showing interoperability.

In reality, many browser vendors implement new web standards early, and therefore support is already good. When we launched our first surround streams, only Chrome and Internet Explorer 11 on Windows 8.1 implemented enough of the Media Source Extensions for us to work with. Today, all major desktop browsers, as well as several Android browsers, have implemented the majority of the specification, giving a total of about 70% of all internet users with browsers capable of playing our streams.

Growing browser implementation has encouraged a number of content providers to ship applications using MSE, with a number of commercial and open-source players now available, as well as in-house players from the likes of YouTube and Netflix.

Last summer the BBC’s Media Playout team integrated HTML5 media support into the Standard Media Player (SMP) and allowed us early access to this functionality for the BBC Proms 2015 season, before announcing a public beta of this new functionality in September 2015. As browser vendors start to announce their intention to disable Flash, HTML5 playback will become the default. Indeed, for iPlayer and iPlayer Radio, if you have a compatible browser and do not have Flash installed, you will already be getting the HTML5 player.

For surround playback, this allowed us to replace the original custom player built here in BBC R&D with the standard BBC player, giving a more full-featured, reliable and consistent experience.

MPEG-DASH

MPEG-DASH, the media delivery format we used, has also seen rapid uptake, with both Netflix and YouTube opting for this format where supported. Here at BBC R&D we have been encouraging uptake of MPEG-DASH in a compliant fashion in a number of ways - providing input to standards bodies to profile MPEG-DASH, providing a series of reference streams which we believe demonstrate best practice in MPEG-DASH, by contributing code and knowledge to open source player projects, and by working with industry partners to provide compliant media production solutions.

The BBC has begun to launch services using MPEG-DASH and, going forward, this will be the streaming protocol on which most innovation will come. Surround streaming is a key example of this, and we have a number of other projects in the pipeline which we hope to share soon.

What’s next

We’ve spent a lot of time over the last two years working with browser vendors, device manufacturers, standards bodies and internally to make sure that BBC content can be viewed on the widest range of devices, and it’s exciting to see the fruits of our effort going live to our users, allowing for simplified serving infrastructure and enabling new content experiences. However, there are still a number of challenges we are working to solve.

Common Media Application Format

As mentioned previously, capable devices are fuelling increased uptake of MPEG-DASH, but unfortunately there are still many classes of device which cannot or choose not to support this streaming format.

Supporting different streaming formats across multiple platforms requires multiple content production workflows, increased storage requirements and higher distribution costs for content providers such as the BBC, and implementation complexity for device manufacturers. A single open standard would reduce the costs and complexity for everyone.

To this end, there is now an activity in MPEG to define a Common Media Application Format (CMAF), with the goal to define a specification for a single media encoding and packaging format that is designed to be used not just with MPEG DASH but with other streaming protocols too such as Apple’s HTTP Live Streaming (HLS).  We are taking an active role in the standardisation process which is expected to complete next year.

WAVE

The media format and API discussed above are just some of the many parts needed to build a complex player application like iPlayer – user interface and the main logic of the application are also required for example.

Building a common player application that works across many environments exposes interoperability issues - smart TVs, set-top boxes and other embedded devices have long lead times and often don’t benefit from the same rapid development and upgrade cycles seen in browsers, leaving them stuck with technology from several years previous to their release date.

In order to ensure our users will have a consistent experience when accessing services from any device the BBC, common with many other video service providers, currently maintains its own profile of existing specifications, describing minimum functionality and performance required. However, this adds complexity and cost for device manufacturers and overhead to the BBC in terms of device certification and maintaining private specifications.

The Consumer Technology Association (CTA) WAVE (Web Application Video Ecosystem) Project is a global effort among both content producers and technology providers to improve the handling of Internet-delivered video on consumer electronics devices and reduce the difficulty faced by content creators in distributing video to these devices. At the heart of this effort is HTML5, and its aim is to reference industry standards such as MSE, MPEG-DASH and CMAF wherever possible.

The BBC has joined the CTA and is actively participating in the standardisation process. The hope is that if WAVE becomes a well-established standard supporting the features needed for BBC services, the need for us to maintain a detailed specification ourselves should reduce.

Search by Tag:

  • Tagged with BlogBlog

Rebuild Page

The page will automatically reload. You may need to reload again if the build takes longer than expected.

Useful links

Demo mode

Hides preview environment warning banner on preview pages.

Theme toggler

Select a theme and theme mode and click "Load theme" to load in your theme combination.

Theme:
Theme Mode: