Our Radio Pop prototype has now been live for just over 2 months (this post to find out more) and we've just rolled out a small upgrade to the site. The new features aren't groundbreaking but we'd like to know what you think.
As part of his 10% time, Duncan has very kindly added Fire Eagle support to Radio Pop. Fire Eagle is a location-broker service from Yahoo that consumes and provides location data in a secure way. Now from your Settings tab in Radio Pop you can authorise Radio Pop to set and get location data from Fire Eagle. At the moment the support is very basic - once you've authorised Radio Pop and Fire Eagle to work together then your Friends page will indicate whether any of your friends are nearby, assuming they've also activated Fire Eagle - look for the map pin icon. It is just looking for whether they are in the same city as you and displays no more information than that. We don't do anything else with the data and we never display your exact location to anybody. The Settings tab also has a textfield for you to easily send your current location to Fire Eagle.
That's quite basic functionality at the moment but we've had other ideas such as storing the location alongside each of your Listens or showing the geographical distribution of listeners to particular radio networks. What would you like to use the Radio Fire Pop Eagle for?
The other features to be added in this release are also simple additions to the Friends page. When you're signed in then that page now shows a list of other users you might know. It's basically friends-of-friends who have at least two of your current friends in common. And it also shows whether any of your friends are listening right now - just hover over the headphone-wearing friend icon to see what they're listening to.
We're not going to be doing a huge amount of work on improving Radio Pop in the future but I know a few of you are regularly using it so we will be keeping it going for the time being. The reason for this is that there are some really exciting projects happening around the BBC right now which should let you do most of the things that Radio Pop does, but integrated properly into bbc.co.uk. The R&D team is now starting work on our next project and you can expect to see a new prototype sometime early in the new year - all I can say is that it's got something to do with gaming and with instant messaging.
Also at the start of the year Yasser wrote about Visualising Radio and the design challenges involved and in February Simon talked about his related prototype. This work has now become part of our department's core strategy and is leading up to an exciting trial in the new year - more to come.
"Video documentation for a little two day electronics workshop using various components, arduino boards and Processing. The brief was - to build a device which measures how much rock bands 'rock'!!"
An idea popped out of Radio 1 Interactive a while ago. This would be a device that measures 'rock' - how much the band and the crowd are rocking at a gig - called The Rockterscale. It would display the amount of rock at the venue and on the web in real-time, maybe even showing it at other gigs and encouraging bands and crowds to out-rock each other. But, until now, no-one has really tried building it. But we were due another hardware hacking session so we decided to build the Rockterscale. Two intensive days later we had these...
First, we have the Hat of Rock which measures the amount of head thrashing. Suitable for both fans and the band.
Next, the dance floor measures movement and a force sensor hooked up to an improvised crash barrier at the front measures the crowd pushing up to it.
A webcam mounted on the ceiling measures the overall crowd movement and then there's the music itself. Audio processing code measures the loudness of the song and the spread of the frequencies in it - a high value would be a "wall of sound" like effect. It also does some beat detection. So we have 6 measurements and an equation...
Hat + Floor + Crush + Crowd + Loud + Phat = ROCK
Each sensor generates a measure of 'rock' between 0 and 9 (what unit of measurement would that be?) and then sends the data to the displays. A separate team were working on the output side and they built a big screen display and a physical scale.
The big screen shows six scales representing the six sensors, with a combined scale at the top - if that reaches 11 then fireworks go off, or something like that. The Rockterscale logo pulses in time with the beat.
And the physical Rockterscale is built from a guitar-shaped pointer which also uses the combined reading. When it hits 11?
The LED turns on.
\m/
That was it. But what happens next? We had to dismantle it on the day because we were using up a meeting room but it does have real potential for deployment at a gig. Certainly the video and audio processing could be used, though I'm not sure how the video code would cope with the lighting conditions. The rest of the sensors would probably need a bit more work; to make them robust, reliable and a bit more standalone and I'm not sure many singers would agree to wear the accelerometer-fitted hat with a USB cable going down their back.
Some technical details for those who are interested...
First, the sensors. The hat has a 3-axis accelerometer mounted in the top which gives an orientation reading in each of the 3 axes, we differentiate these readings to give a movement value. The cardboard floor mat also has an accelerometer attached and this worked in the same way. A force sensor is mounted between an improvised barrier and a table and that needs a reasonable amount of pushing to register. A webcam mounted above the audience measures the amount of movement in the whole image using Processing. The image is divided up into an 8x6 grid and then the difference between the pixels in each grid square for each frame gives 48 movement values every second (represented as the blobs in the photo above). The audio processing is based on the aubio C library and measures loudness and spectral spread as well as doing beat detection.
All the sensors were powered through Arduino boards that were hooked up to MacBooks - we didn't have time to make them standalone. Each sensor produced a stream of readings (0-9 on the Rockterscale) up to 10 times per second. These were sent asynchronously over the local network using Open Sound Control (OSC) to a single Processing application doing the presentation work. The screen display and the guitar-pointer was (powered by a stepper motor via an Arduino) were both built with Processing.
Why we do this
As always, we hold these workshops to get people thinking differently, to provide inspiration, as team-building, to get people away from their day job for a bit and to build something which might even be useful. Previous hacks have included the DABagotchi and Dog Vader.
There's been a little revolution going on with BBC Radio output online. The UK national stations (like Radio 1, Radio 4, or Asian Network) now sound better than ever online - and there are more changes to come.
We've been working, along with the nice folks from software company twofour (above), on something we've called Coyopa. The name's from a Mayan God of thunderous noises, in case you wondered. It is the new system for encoding live and ondemand audio from the BBC's UK national radio stations.
Until now, the audio you've heard online from the BBC has been broadcast onto digital satellite, then received on a satellite dish in a nice building in Maidenhead, where it's been recorded and re-encoded for online use. As a result, we've had the occasional reliability problem (satellite dishes don't like snow; sometimes the satellite receivers break), and a nagging feeling that the audio hasn't necessarily sounded as good as it could have done because of the double-encoding process we've used.
Behind the scarily technical-looking people in the image above is one of the two identical versions of Coyopa. Both Coyopa units are now in London's Broadcasting House, so they get the cleanest signal possible - direct from the studios (which in the case of Radio 3, 4 and 7 are just a few floors higher up). One of the Coyopa units is now working; the other is in its final stage of being commissioned. (We've two so we can do software upgrades with no problem, and so we maintain a reliable service).
Coyopa's producing the on-demand versions of the files you get in iPlayer (both the standard Flash player, and the Real version). It's also currently producing Windows Media files, which are publicly unavailable but which your new wifi radio you'll get at Christmas (sorry to spoil the surprise) will hopefully be using before too long.
For live, Coyopa's producing a stream intended for the Flash player (you'll see that in January, if our current project hits its target); and currently it's also producing a live, higher-bitrate Windows Media stream (on wifi radios and also available to some users of the iPlayer, particularly if you fiddle with the text-only version). The Real Audio live streams that Coyopa is producing are not, yet, public - those are still coming from Maidenhead until both Coyopa systems are up and running for reliability reasons.
Our eventual plans are to ensure that the iPlayer "just works" (ie doesn't need any media player downloads), with higher-quality audio than is currently available, and as little of that pesky rebuffering as we can manage. We also will continue to support wifi radios and other connected devices, with Windows and AACfamily streams available.
If you've got questions, we've got answers. Follow me to the Radio Labs blog for a fuller version of this post, with a ton of FAQs. That's also where you can comment to this post.
Ah, you're already here. In which case...
What kind of audio processing does Coyopa audio go through?
We produce all our programmes with audio processing in mind - which evens out the sound and ensures that there aren't suddenly VERY LOUD BITS. For online use, we're now using the same processing that you hear on Freeview. This is the least audio-processed version we broadcast.
I've read that the BBC wants to limit the audio quality of radio online, in favour of DAB. True?
No. 100% false. We want to make sure that every single platform sounds as good as possible. "Sounds as good as possible" means a high-quality AND continuously-available stream (ie no rebuffering), rather than blindly offering as high bitrate as possible. And it's your money we're spending, so we want to make sure we're doing so in a way that offers good value for money.
Why aren't you streaming at 320kbps (insert favourite bitrate here)?
Unlike television, much of our streaming happens at work, rather than home. Work connections can be heavily contended, leading to more buffering than you'd think. Coyopa's specifically worked on the signal going into the encoders, to ensure that the base material is as good as possible; and the BBC's flash player (known internally as the EMP) is monitoring rebuffering events for us. As internet connections change, so our bitrates will.
Where's the low-bitrate version?
We'll go live in January with the higher-bitrate version; and continue to use Real for the low bitrate version. We're adding lower bitrate versions soon that won't require Real; and will offer automatic bandwidth-switching when the technology we use allows us to.
I'm outside the UK. I'm jealous of the higher quality you guys get.
Sorry about that. Coyopa's making all the on-demand RealAudio streams you get now; so you'll get some benefit there. And we're re-evaluating the costs and technologies we use to stream overseas. More news soon, we hope.
Any plans for Ogg Vorbis / FLAC / CUSeeMe streams?
Not right now. We'll continue to monitor new formats, and if there's a good reason for adding them, Coyopa's flexible enough to add new formats, particularly for on-demand streams.
I want the direct links for my wifi radio
We're working with all the major manufacturers to ensure that they give you the best links for our audio. We do aim to publicly publish direct links, for both live and on-demand, to the playlist files (those ending .asx or .pls for example), though you're unlikely to find those in the BBC iPlayer's interface. We'll let you know when we add them.
Are you getting rid of any of the formats?
No, we've no plans to remove any of the streams and formats we offer. We've plenty of plans to add to them; and of course, we'll always re-evaluate our streams. Your Kerbango internet radio is safe for now.
What about BBC Humberside - I'm a fan of Peter Levy?
Our friends in BBC Local Radio, along with those for national radio like BBC Scotland, Wales and Ulster, are doing parallel work to improve the quality of their streams. And we're all fans of Peter Levy.
I've got another question that's not covered here
Excellent. Drop it in the comments, and we'll reply; though we can't enter into long debates about the rights and wrongs of our chosen bitrate/codec choices: for that, there are a number of dedicated radio websites.
FM&T Journalism launched their new public facing blog "Journalism Labs" today with a post outlining the results of the recent Apture trial. Journalism Labs is a sister blog to this one and its purpose is to provide an in depth look at the design and technology that supports the BBC's online journalism, read more here.
Last Friday the BBC's RAD (Rapid Application Development) Unit, led by George Wright, held two days of hacking in a Recommendation Super Sprint - the aim being to get people from around the BBC to play around with recommendations and personalisation. Chris and I from the R&D team at Radio Labs went along for the first day with few concrete ideas but the desire to play with some of the data we've gathered from Radio Pop.
Chris took a dump of the Radio Pop database - we've got around 1400 registered users and 24,000 "listen events", from when we launched in September to now. He removed any personal and extraneous data and then used PHP to process the data and write out text files of the data we needed - basically, a piece of data for every hour in which each user listened to BBC Radio through Radio Pop. I then used Processing to draw some images of this data.
Click to see the full-size image, it's much more interesting
The first image shows everyone's listening. Each row of pixels represents an individual user of Radio Pop, with time going from left to right. Each pixel then represents one hour of one day, plotted in the appropriate position - it is black if they weren't listening and it is coloured in if the user listened during that hour, the colour representing the radio network they tuned to (e.g. Radio 4 is dark blue, Radio 1 is white; see the key at the bottom of the image).
The distinctive curved line is because the users (i.e. rows of pixels) are in order of registration on the website, so those at the bottom joined Radio Pop later. And people tend to listen a few times once they've registered, whether they continue to use it or not.
Download the full-res version and zoom in to see more detail, maybe see if you can find yourself. There are some interesting patterns of recurring listening and combinations of networks and patterns are one of the reasons for visualising data as the human brain is tuned to pick out regular recurrences in images. Here are some things I noticed...
These groups of 5 white dashes seem to show someone listening to a few hours of Radio 1 every week day - The Chris Moyles Show I guess?
Someone listening every day in batches, with a selection of networks.
Again, click to see the full-size image
This second image is a modification of this where we removed the dependance on time so each row is now all the listening for that user represented as pixels stacked alongside each other. It makes it a lot easier to see how much people have listened and to what. This produces even more pretty patterns with the coloured stripes showing regular listening patterns...
My listening is the second row from the top of the image, I normally listen to Radio 4.
Here's someone with a definite regular pattern of listening, mainly Radio 4 with regular Five Live and 6Music outings.
I found this one interesting, it seems to show several days worth of listening to just Radio 3, then several days listening to Radio 2 and then 1Xtra.
Then finally we just plotted a timeline of the listening for each radio network, with a fuzzy blob representing how many people were listening at that time. Again the peak is just when we launched. Next? More data please!
A couple of caveats: 1) The data is only from users of Radio Pop and it isn't representative of BBC Radio listening. 2) None of the data is completely accurate, for instance by having a resolution of one hour per pixel we had to fudge what was listened to in an hour. 3) We haven't taken account of when on-demand listening actually happened, we use the original broadcast time of the programme.
BBC Radio Labs is from BBC Audio & Music Interactive. This is where we write about what we're working on, look at developments in music and radio in the digital world and show some of our prototypes for new sites and services.