136 comments

[ 0.21 ms ] story [ 218 ms ] thread
This is a lot of fun and quite creative. Turning text into a beat is awesome - I have often thought about listening to a for loop, now you can!
Grizzly engineers from the 70s told me of a way to use a radio to detect stuck code. Tune it to the computer's clock and if it started to make a constant pattern, you had a bug!
This also works with a Commodore 64 on RF if you crank the sound on the TV
(comment deleted)
(comment deleted)
When you unfocus the tab drum beats produces different sound. Is it a feature or bug?
Pull the tab into a new window and you can then layer sounds.
It's how WebAudio works. If the tab loses focus, the callbacks to the Audio Thread are throttled so the sequencing might be a bit messed up.
I think it is more how any JS script works, Chrome and Firefox (at least) slow down the process (for CPU consumption, to save battery... etc). Since that script is working using a setInterval to look ahead, he needs to wrap the setInterval in a Web Worker, so that thread is never runned slowly.
(comment deleted)
Needs more sounds that come from the left speaker. All I here are right speaker sounds.
Quick tip/Easter egg. Wrapping the text in parenthesis allows you to do triplets.
So how does it work?
Basically creates a pattern from your letters and sequences it using WebAudio. If you look at the Network tab, you'll see the individual mp3 files for each letter being downloaded.
Surround your stuff with parens
The results are so good, I'm thinking this could be used to generate background for some videos.
I call this one "The Master".

http://typedrummer.com/901ci8

And now I am humming the rest of the melody, and loading up Netflix. You have ruined my entire day of productivity. It is 10:17 am. Godspeed, you glorious bastard.
For those downvoting me, parent is a Doctor Who reference: the Master is a character on the show obsessed with that specific beat (which any further explanation would be spoilertastic).
An unknown error occured while processing decodeAudioData. decodeAudioData error" undefined"
it would be amazing if it was easy to tell which was the currently playing character.
Someone needs to combine this with a melody sequencer that maps ascii <-> pentatonic scale notes or something.
you can use the "|" to put a pause...
I don't know if they did it on purpose, but `qwerty` sounds pretty nice