Audio and Video Streaming the Olympics
Core Services Head
BBC Online operations video monitoring wall
I'm Marina Kalkanis and I head up the Core Services teams in BBC Future Media that are responsible for the BBC live and on demand programming on the internet. My colleague Cait O'Riordan has already outlined how the Olympic content - metadata and AV streams - gets to your device, and David Rogers has blogged in detail about building the Olympic data services.
This blog will give you more detail about how we built the media delivery workflow for the online Olympics.
My team takes the live broadcast feeds and turns them into formats that can be delivered on the internet along with the appropriate metadata. We also deliver the Games catchup media that remain available for the next six months.
Early on we decided to build our own workflow solution as the integration points to our own back-end systems tend to be unique to the BBC. We also decided to use, as much as possible, the same infrastructure and expertise that powers the BBC iPlayer, News, and Sport sites.
With iPlayer, News and Sport we already had services that were very good at Video on Demand (VOD) and live simulcast. What was new for the Olympics was, as Matthew Clark has blogged, the scale of our ambition: 24 simultaneous live streams, thousands of events and more than 2400 hours of content over the two weeks.
Plus we were planning to double or triple any previous streaming peak.
We needed something that could handle the load, allow users to jump to any point in any event stream, and look great on a range of devices.
Simplified diagram of the live streaming architecture
So where we've innovated is in our use of HTTP adaptive bitrate streaming.
ABR was tested in the Wimbledon HD HTTP streaming trial (interesting detail in blog post by Andy Armstrong) that laid the groundwork for the Olympics video.
Delivering live video using HTTP - the same way web pages are delivered to your browser - gives us much greater distribution capacity as it uses existing caches and standard HTTP infrastructure. This allows users to receive high quality streaming video even when we're delivering the peaks around the big Team GB medal moments.
To get very technical,we decided to use eight h.264 profiles ranging from 54 kbps at 224x126 to 3500 kbps at1280x720. We serve these in several different Adaptive Bit Rate sets targeted at different screen resolutions, device capability and network throughput. We are using two flavours of chunked HTTP delivery: Apple HLS and Adobe HDS. We are still delivering RTMP - an older streaming protocol - for some legacy devices.
A flagship feature of the BBC online Olympics is the interactive video player (IVP, blog post by Alex Perry) with chapter points that allow a user to jump back to key moments in a live video stream. The streaming technology behind this is HTTP Dynamic Streaming from Adobe with timecodes inserted to allow the player to accurately seek a specific second in the stream.
Oliver Bartlett has blogged about how the Olympic Data services supply the chapter markers and other metadata to the IVP.
As soon as an event is over the clock starts ticking for us to make the content available as catchup.
The live Flash Media Servers write the HTTP chunks for the live events to disk.
Another first for us is that rather than producing a separate encoding of the same media for the catchup version we recombine the live HTTP chunks back into a single mp4 file and deliver that to the origin of the Content Distribution Network to use for on-demand streaming.
Managing the Streams
To manage so many simultaneous live events we've built a live stream management tool we call Marvin.
Marvin maintains all the encoders and all the streaming settings through a single interface. This means that with a single console the AV producers can start and stop encoders, connect the sources, bring graphic slates up and down, route the encoded streams to the correct end points and monitor the status of the encoders.
Marvin also sends the messages to our data services to turn on and off links on the pages and create the right connections, and sends the accurate start and end times to the Olympic data services.
To manage the full and dynamic schedule we've built an event scheduling tool that sets up webcasts for each event with scheduled start and end times. This tool allows the same AV producers to manage the full schedule for each day.
A really fantastic aspect of working on the Olympics online video service is seeing all the BBC Future Media teams pulling together to meet the challenge and the support we received from the wider streaming media industry.
If you have any questions on how we delivered the video service I'd love to hear from you.
Marina Kalkanis is Head of Core Services in BBC Future Media, Programmes and On-Demand