This past week, I found myself in a situation where a spontaneous idea turned into a multi-day, 10-hour-per-day streaming project for the Ubuntu Summit. Here's the story of how I pulled it off—from a casual suggestion to a working stream—and the open-source tools that made it possible.
💡 From A Spontaneous Idea to a 10-Hour Commitment
My band had played at the Ubuntu Summit a couple of years ago in Prague. When I heard the summit was happening again this year in London, I reached out, hoping to play. Turns out, it was going to be an online summit.
I pivoted quickly and suggested: "How about we do a live stream music event for it, with performances each day after the main summit?". They loved it.
But then they came back with a twist: "Could you play music all day long that we could have in the background, and then do the performances after?". I said yes—without fully thinking through the logistics of what became a 10-hour stream for two days.
Luckily, the whole concept was based on Creative Commons music, so it could be played on our YouTube channel without copyright issues. But now I needed about sixteen hours of Creative Commons music.
🤝 The Collaborative Solution
Luckily, a great idea popped into my head. I have a friend named Ryno the Bearded who runs a Creative Commons radio stream every Friday called the #OO show. He has a huge, curated library of Creative Commons music.
So I figured I could connect to his continuously running Icecast host (an internet radio server), take the audio feed, and stream it onto our YouTube channel via OBS. Ryno was cool with it and also planned to set up a special playlist of music to use.
🛠️ The Attribution Challenge: Concept to Creation
The initial setup was easy: I pulled Ryno’s Icecast stream directly into a media player in OBS and added a themed image for the background.
However, I also wanted to display the song title and artist that was playing on the stream. While Ryno's Icecast page showed the song and artist, pulling that info into my stream proved to be difficult.
- First attempt: I tried using an OBS plugin called Tuna, which can display the stream information. Unfortunately, it only gave me the stream name ("OO show") and wasn't pulling the song details.
 - Second attempt: I did more searching and found an old-school method using a Python script.
 - This script didn't try to pull from the stream itself; it went directly to the IceCast server and asked for the "now playing" information.
 - The script then wrote that information (the song name by the artist) to a text file on my laptop.
 - This text file updates its information every time the song changes.
 - Displaying the info: Back in OBS, I opened the text source. Instead of typing the text, I switched the setting to "text from file" and pointed it to the text file that the script was constantly updating.
 
And there it was! OBS was just reading that constantly changing text file and displaying the song title and artist name on the screen.
This whole process—coordinating a stream with another server, managing an 8-hour Creative Commons playlist, and figuring out the real-time attribution display—was all a first for me.