blodeJazz

The server generated music of sparkfun.com

Favorited Favorite 0

A few years ago while working at a small community college in Michigan, I came up with a method to generate simple free form music from web site traffic. At the time, the college's web site did not receive much traffic, so the result of the experiment was a little disappointing and I ended up abandoning the idea. I revisited the idea last year when I learned of SparkFun system administrator Ben LeMasurier's work on an event broadcast daemon called blode.

Blode is a Node.js daemon that runs on one of SparkFun's web servers and allows developers to broadcast syslog style events to an arbitrary amount of TCP or WebSocket  connected clients. Events can be pushed as JSON from any TCP, UDP, or HTTP connection to the blode listener, which then rebroadcasts the event to all of the connected clients.

blodeJazz is a Node.js blode client that parses the stream of events sent from sparkfun.com's web servers and turns those events into Open Sound Control messages which correspond to notes in the current key of a jazz chord progression. These OSC messages are then parsed in Max/MSP and sent as MIDI notes to a software synth for playback. Max/MSP also handles forwarding the OSC messages to a monome 256 and arc 4 for display, and also handles the arc 4 and 256 user interaction.

There are three type of events that blodeJazz currently listens to:

  • Product View - plays a melody note and triggers a falling animation on the monome 256
  • New Order - plays a bass note and causes the third ring on the monome arc to pulse
  • Login Attempt - moves the selected chord progression one step forward, plays the new chord, and causes the fourth ring on the monome arc to pulse

The current key, the current progression and the speed of the falling note animation are all controlled by the monome 256 and monome arc.

I started a KickStarter project to help fund a limited run of blodeJazz 7" translucent red vinyl records. Side A will feature music generated during a normal business day, and Side B will feature music generated under the heavy server load of Free Day 2012. Watch the video above to see examples of the music that will featured on the record. 


Comments 49 comments

  • staticboy / about 13 years ago / 8

    My Ears are dying of awesomeness

  • r0b07h4ck3r / about 13 years ago / 6

    SparkFun.coolness++; // Backed

  • littlefreak / about 13 years ago / 4

    Backed! Awesome for just leaving on the record player while ya do stuff around the house.

  • SomeGuy123 / about 13 years ago / 4

    This really works! I just opened up like 100 tabs of product pages and the notes started going off like crazy.

    That, or it's just my imagination.

    • todd / about 13 years ago / 4

      It works, but you just have to keep in mind that Ustream has a buffer delay of a few seconds.

    • war_spigot / about 13 years ago / 3

      That's what happens anytime something responds to people on the internet. There was this project on HaD where a M&M would dispense from a machine every time someone tweeted a certain phrase. So of course I tweeted it 20 times...

  • EliTheIceMan / about 13 years ago / 3

    log out log in log out log in log out log in log out log in log out log in log out log in log out log in log out log in log out log in log out log in log out log in log out log in woooooo

  • Nukez / about 13 years ago / 3

    Awesome and very interesting to listen ! :)

    it's very sad that i dont have a vinylplayer at home :S Have you thinked about adding in kickstarter a digital copy of it ?

    i will back you for sure if you do this!

    • todd / about 13 years ago / 5

      I will post the digital copy for free download once I finish mastering it.

  • icyfyer / about 13 years ago / 2

    BACKED! I don't have a record player, but I love the look of this record, and got the sheet music pack so that I can have it framed like a gold record. After framing, I plan to use the MP3 shield to add a button to the frame that will allow me to play whatever you have available for download. That would be awesome.

  • zeroid / about 13 years ago / 2

    Early development for next years Free-Day dance party :)

  • trodoss / about 13 years ago / 2

    Sounds kind of like the in-game music in Minecraft.

  • Member #54511 / about 13 years ago / 2

    Ok... Is my memory failing me or is this the sort of piano music that used to play while Mr. Rogers was showing a video segment oh so many years ago? Cause that's what I'm imagining as I listen...

  • Nukez / about 13 years ago / 1

    Hey Todd have you plan to make BlodeJazz always open ( for streaming ) on sparkfun server ? ( Or on an other server )

  • icyfyer / about 13 years ago / 1

    This got backed pretty quickly. I'm excited!

  • Hanzibal / about 13 years ago / 1

    Hi Todd! This blodeJazz thing of yours inspired me to do a "slightly" less sophisticated Netduino version Would be really cool if you took a look!

    • todd / about 13 years ago / 1

      Nice work! Do you have the code posted anywhere?

      • Hanzibal / about 13 years ago / 1

        Cleaned up the code and posted in the Netduino thread. It's C# but could be converted into C++ for Arduino.

      • Hanzibal / about 13 years ago / 1

        Tahnks. I will post the code in the Netduino thread, it's very uggly right now and I have to hit the sack (6 am here).

  • christinasc / about 13 years ago / 1

    Hey Todd, nice job on the blodeJazz. I'm thinking of adapting the progression and chord sequence for the sparkfun musical instrument breakout board.... porting it to arduino, that is. I'm curious to know if you've already done something like this so I don't do something that's already out there. thanks in advance.

    • todd / about 13 years ago / 2

      I have the same concepts written as a C++ object, which should work with Arduino. I will try to find it, clean it up, and put it on GitHub this weekend.

      • christinasc / about 13 years ago / 1

        please do. I'm looking forward to integrating it into an existing project that will be showcased!!

  • signal7 / about 13 years ago / 1

    I would vote for ditching the animated gifs, personally. I would much rather watch a video than a poorly played, distracting animation that loops over and over.

    Otherwise, cool hack!

  • Blacklab1 / about 13 years ago / 1

    Now if you just could pipe this music into the elevator...

    or the Time Out Room�

    You would have people so relaxed there would be no more stress at Sparkfun�

    Image if you put this music on the phone� Better not do that, people would just call so they could fall asleep.

  • Nukez / about 13 years ago / 1

    No more streaming ? :(

    i've studied all day with this music ! (ho by the way this is awesome) Plan to bring it back ? :D

  • R_Phoenix / about 13 years ago / 1

    Wow, no disrespect here but a company that prides itself on it's success and gives back to it's customers with a $200,000.00 free day doesn't need to be using Kickstarter.

    • neurdy / about 13 years ago / 7

      This is Todd's (awesome) project that was used for Free Day 2012, but the Kickstarter campaign is not affiliated with SparkFun. That being said, we want to support our employees and many of us are backing his project because we want the delicious red vinyl.

    • NorthStreetLabs / about 13 years ago * / 4

      I disagree. Crowd sourced funding is quickly changing the game, now people on the interwebs can actually get something completely unmarketable created if only enough people want it made, aka this ridiculous vinyl album from Sparkfun. With the all or nothing funding at Kickstarter this is a perfect project to make sure the creator doesn't lose money.

      • R_Phoenix / about 13 years ago / 1

        Humm, kinda sounds like "pre-Order" to me. They can simply state "If we get enough orders we will produce it".

        I simply feel that Sites like KickStarter should be left to those who can't afford to do it on there own and actually need community support to launch their idea/product. It shouldn't be used to eliminate all risk/liability to an already established company.

        • todd / about 13 years ago / 5

          There is a large upfront cost to make vinyl and since this was a personal project I didn't feel comfortable asking for funding from SparkFun. I had no idea how many people would be interested in vinyl (even though I am), and the project still may not reach its funding goal. I feel that KickStarter was a great option for this project.

  • Malvineous / about 13 years ago / 1

    Any idea how to listen to it under Firefox when you can't get Flash to work? The Ustream feed is just a black rectangle, and the one at the top says "Curses! Please switch to a browser that provides native H.264 support". Maybe a YouTube video? Most of them work fine.

      • Malvineous / about 13 years ago / 1

        Thanks for the suggestion! Unfortunately that says "Blast! Please switch to a browser that provides native H.264 support" as well. It said I could log in to download it so I signed up for an account, but now it says "Sorry, not available for download" :-(

        • todd / about 13 years ago / 1

          I am guessing that you need to upgrade Firefox or disable add ons. All current browsers should work with Vimeo.

          • Malvineous / about 13 years ago / 1

            I just upgraded to Firefox 13.0a2 but no change. AFAIK Firefox doesn't natively support H.264 video due to patent issues, so the only option to watch those videos in FF is to run Flash. Shame. Anyone have a YouTube link or an .ogg download I can listen to instead? Even downloading the H.264 video would be fine, then I can watch it in mplayer.

            • todd / about 13 years ago / 2

              Sorry, my mistake. I just changed the settings so you should be able to download the source video from the vimeo link.

              • Malvineous / about 13 years ago / 1

                Many thanks! I have been able to download and watch it now. Very nice work! Thanks again :-)

  • Shadow13 / about 13 years ago / 1

    It's like a bunch of monkey's hitting a keyboard, except it is more controlled and sounds a lot better.

  • SMD4U2C / about 13 years ago / 1

    I would love to see this as a Facebook Application, mixing Sparkfun.com traffic with Sparkfun's Facebook Page traffic. And then, give us a Smartphone App to download and execute where we could select 'Sparkfun website traffic', 'Facebook Page traffic' or 'Dual Traffic Mashup'

  • chartle / about 13 years ago / 1

    I don't know, I just hear it as prettier noise.

    Though I can certainly appreciate the tech behind it.

    Sorry I have call I'm as I see um.

  • AustinDuff / about 13 years ago / 1

    This is cool, clicking the login button multiple times really fast makes a bunch of chords a few seconds later.

Related Posts

Recent Posts

Tags


All Tags