Sam Gentle.com

Markov Technology

A screenshot of Markov Technology

Today I'm releasing Markov Technology, a demo I've been working on for a little while that uses Markov chains to create an endless version of the mid-2000s electronic masterpiece Tricka Technology.

Markov chains are a kind of state machine model where your next state is determined entirely by your current one, so there's no history or complex logic, just decisions based on immediate factors. That can be a bit tricky for music because you expect a certain degree of long-term structure. Tricka Technology was a good pick because it's fairly repetitive without being boring, and the different sections segue into each other fairly nicely. I was particularly proud of the giant wheel of samples for the chorus.

This is actually the finished version of a prototype I made back in Februrary. I'd already done the work of cutting up the music and building the Markov model, I just needed to add the graphics. I say "just", actually it took probably four times longer to finish than the original work did. Doing graphical stuff is super tricky, especially when it overlaps with audio.

Speaking of which, there's some weird bug on Firefox that leaves gaps in the audio. I tried to figure it out and it seems to be something to do with Firefox getting the wrong buffer length after it resamples the audio to the samplerate of the audio context. Anyway, uh, don't view it in Firefox I guess. It's fixed now, and by fixed I mean I used oggs instead because the bug appears to be restricted to mp3 files.