broadcast

broadcast

a norns mod to create a public mp3 stream from your norns.

broadcast

broadcast is a simple mod that lets you make a dedicated music stream from your norns. the output is a public URL of an mp3 that can be listened to in a browser, in music apps, etc.

see the current advertised streams here:

broadcast.norns.online

how it works

broadcast works by using darkice and icecast2 which interface with JACK and convert the norns output into a mp3 stream (which is configurable). this local stream is then streamed via curl to a server I setup at broadcast.norns.online. the server is ~200 lines of code that simply copy bytes from a POST request (i.e. the stream) to any number of GET requests (i.e. browser client(s)).

broadcast will install ~2.5 MB of linux packages when you run it the first time and while running will take a small amount of CPU to run the stream conversion, and use some internet bandwidth to upload the stream.

the script is inspired by pirate radio, and @maaark’s mod to play internet streams but this is the inverse where you generate the streams. maybe similar to blast box.

Requirements

  • norns
  • internet connection

Documentation

you can install broadcast and then activate the mod in the SYSTEM > MODS > BROADCAST. after activating for the first time you need to restart SYSTEM > RESTART. (this first restart may take a few minutes, during which your screen may be blank).

after installation you can activate the broadcast by going to SYSTEM > MODS > BROADCAST. first use E3 to select edit station name and press K3 to enter in your station name. then you can use E3 to select offline and press K3 to turn go online. if you are “online” you can use the URL to listen to your norns.

you can advertise your stream by toggling “advertise” to “true”. then your stream will be listed at broadcast.norns.online. note: all the streams are public so don’t share anything private. the streams are not password-protected or anything. but the URL for your stream is private unless you share it (technically the server also sees the URL but I don’t keep logs so I don’t see it…).

Download

;install https://github.com/schollz/broadcast
86 Likes

soooooo freeking coooooool

2 Likes

That’s amazing! And you’re streaming now :wink: <3

So the way I understand it, the Norns itself becomes a server, no? And broadcast.norns.online is something you maintain? Just trying to wrap my head around how this works.

Also, we should totally have a Norns-based receiver, at some point!

4 Likes

norns came back with a blank screen after the restart but after another restart in maiden and everything worked great - https://broadcast.norns.online/TOMW.mp3

4 Likes

Wow! I admit I thought the concept of Blast box was cool but was put off by the $200 device or $40 plugin required. Now it looks like we have a better Norns alternative :wink: thanks @infinitedigits !

3 Likes

i love this! thank you so much for sharing :smiling_face_with_three_hearts:

7 Likes

thanks @infinitedigits now I can stream everything just with a norns and my phone… killer mods!

:exploding_head:

2 Likes

nice stream @tomw! been listening for awhile and enjoying! a future idea would be to opt-in to a index of current norns streams so you could tune into different norns from a website (i.e. akin to radio aporee ::: maps - sounds of the world).

yes kinda! norns runs the darkice/icecast2 combo is technically a server that serves the mp3 but its only available locally (at <nornsip>:8000/radio.mp3). to make that local mp3 available to the public internet, I used a little trick: the broadcast mod will actually copy that local mp3 file and constantly upload it to the public server (broadcast.norns.online). its actually a curl command streaming into another curl command:

curl <localurl> | curl -k -H "Transfer-Encoding: chunked" -X POST -T - <publicurl>

yes - broadcast.norns.online is like the portal to the public internet. its a server I maintain. its is super simple - here is the source code. anyone could run their own server and then just change the broadcast.norns.online to the address of your own broadcast server. maintaining is really no problem, I have it on a digitalocean droplet with like 30 other servers…

13 Likes

this is kinda messing with my head because i know alarmingly little about websites and streaming (the tech behind it)

so when i click here and listen…is what i’m hearing live? or an archive of some earlier session?

just amazing to think what’s possible with this :slight_smile:

4 Likes

yeah it is live! it is delayed by only a few seconds due to buffering. as soon as my norns turns off that stream will be unavailable because there is no archive of it - only the live stream.

the tech behind it is a mash-up of linux tooling (darkice/icecast2/curl) which is made possible because norns itself is (in addition to a music box) a linux box. meaning lots of things are possible! for instance, using something like the tending the waves mod you could import other people’s norns streams into your norns to add into your practice. or perhaps you could have multiple norns around the world stream to the same computer (i.e. one computer has multiple browser tabs with each tab directed to a different broadcast.norns.online url) so you could have multiple norns playing together (not synced).

9 Likes

Is there a way we could ask broadcast.norns.online which streams are online (like, is that a thing your server does?) In that case we could list online streams in the mod.

3 Likes

yeah I think this would be cool and possible! but it’d have to be part of a “opt-in” switch in the broadcast mod to allow your stream to be part of an index. I think its better to have things be more private than public by default…and with that I should note: all the streams are public so don’t share anything private. the streams are not password-protected or anything. but the URL for your stream is private unless you share it (technically the server also sees the URL but I don’t keep logs so I don’t see it…).

6 Likes

absolutely brilliant case study of what mods can be. i have a bunch of new ideas now… thank you for all your creativity and always sharing it. so inspiring.

6 Likes

Then fed back into each other :smiling_imp:

what a cool idea!! thank you for all the creatively you’re willing to share and enable for others. you’re an inspiration

3 Likes

With this mod the question has now become: is there any reason to ever turn this off? :radio: :wavy_dash::wavy_dash::wavy_dash::wavy_dash::wavy_dash::wavy_dash::tokyo_tower:

6 Likes

on line :partying_face: https://broadcast.norns.online/mo_o17.mp3

5 Likes

I second this!

  • Nice “sharing” pun @Justmat +

EDIT;

Im sure that I’m way ahead of myself but I normally use Norns in tandem with ableton. So I must ask,
would this be the sweet spot to focus on to get ableton’s master outs to broadcast? or Is that even possible? love ya @infinitedigits !

Screen Shot 2022-01-07 at 2.53.23 PM

2 Likes

ok so after testing i’m doubly amazed by your choice to make this a mod

i just went live and ran a tape through another script while broadcasting AND recording…i then started playing an 8s loop of the recording (thru fx again & broadcast live)

there is a ton which could be done with this setup in a live setting or broadcasting bits to friends!

for example
the station name is case sensitive so that should bake in some level of privacy if i wanna send a private link to folks periodically…there’s room for lot’s of creative spelling/capitalization

yeah this is exactly what i plan to do

broadcast from both devices and amplify the the casts to mic and resample w/ feedback (OR send listeners two links during a performance and mix signals between devices so they get an immersive spatial experience!!)

12 Likes

zack i’m pretty sure you’re singlehandedly making more and cooler stuff than the rest of us combined :heavy_heart_exclamation:

edit: now we all can be secret radio pirates!

14 Likes

Wow this sounds amazing.

Installed, activated, restarted, and norns screen has been blank for about 20 minutes. Does that seems normal or has something gone wrong?

2 Likes