For the last six months I’ve been on a placement in News Labs as developer on the BBC’s Digital Media Graduate Scheme, and in this post I’d like to share what I’ve been working on during this time.
My main focus has been a prototype called the “News Slicer”. Its goal has been to explore the chapterisation of television news broadcasts and the new applications that enables.
the News Slicer programme view
Live television news broadcasts, such as the BBC News at One, Six and Ten are produced using something called a running order. Much like a playlist of songs, this is an ordered list of the elements that make up the programme, in terms of both the editorial structure, such as headlines, stories, packages, interviews, etc., and production instructions, relating to camera positions, on-screen graphics, lighting settings, and so on.
Traditionally, running orders are just used in production and are more or less forgotten about after the programme has been broadcast. But we were interested in whether any valued could be derived by retaining the information contained in them.
We’ve come up with a process that allows us to capture the running order elements as they are played out, along with accurate timing information. By reassociating these with the video of the broadcast we can provide a new, richer view of the programme.
an example running order editorial structure extract
This allows a viewer to navigate through a programme using its editorial structure of chapters and stories. Where previously they would have to semi-randomly seek through an opaque 25+ minute video, they can now go straight to the item they are interested in.
For instances where the presenter is reading from the teleprompter in the studio, the running order contains that text. We can then run that through a concept extraction engine such as DBpedia Spotlight to build a list of topics associated with each chapter of the programme.
These topics can then be used as an alternative route to finding items that have been broadcast. Instead of choosing a particular programme and viewing the chapters that it consists of, it’s possible to retrieve all the chapters across multiple programmes that are tagged with with a certain topic.
the search interface
An interface was built to allow users to build up queries consisting of multiple topics, combined with full text search. Chapters that meet the criteria are returned and can be played independently of the context of the programme within which they reside.
The prototype was built using a number of technologies: the front end is an AngularJS app making use of a few third-party directives, running order data is stored in MongoDB and exposed via APIs using the Node.js Express framework, and the search functionality is provided by Elasticsearch.
Aside from television news, we’ve also made tentative steps towards doing the same kind of things for radio news programmes, such as Radio 4’s World at One. While radio production in the BBC uses something roughly equivalent to running orders, unfortunately the data is nowhere near as rich. We’ve started discussions around how to obtain richer data so there is potential to revisit this in the future if that is forthcoming.
I’ve really enjoyed my time in News Labs. It’s been great to be able to take an idea from conception to implementation, learning a lot about a variety of interesting technologies, as well as the news production process and systems within the BBC.
Best of all, it seems the work I’ve done will be taken forward by others and live on after I leave!