Indeed. Another fascinating approach to generative music is to code it out, and add some randomness, like this guy who does a pretty good stab at imitating Keith Jarrett: http://homepage.mac.com/digego/study_in_keith.mov (25MB mov file)
This really shouldn't have the problem of repetition. You even make events in the game affect the music, to make it less monotone, and add to the mood of the game. It has been tried, but as far as I know no one has actually published something like this yet.
> You even make events in the game affect the music
This is really what makes it _very_ interesting in my opinion. The whole super compressed non-looping music is nice, but having music that responds to your actions in real time can be amazing. More than having music for each level you can have music for each bad guy and even better how the bad guy is "feeling". Speed up the sequencer when they are mad. Start out with a bunch of cells and remove them as a way of showing the health left.
Using cellular automata to generate music may not be new, but I haven't seen this specific method used. Nor have I seen anything that compares to the way it subtly changes as it develops while still maintaining a steady beat without resorting to resetting the pattern as in your example. (Correct me if I am wrong though; I'm not a musician.)
It would be really cool to be able to change the number of rows and columns and also the instruments and tones/chords for each row/column.
It's fun opening more than one browser tab and having more than one of these going at once. I refer you to my comment about needing to be able to change the instruments.
The problem I have with WolframTones is it tries too hard to sound like traditional human music and fails pretty badly at it. Procedurally generated music systems that don't attempt to emulate previous kinds of music fare far better (including the original link). An older example would be the original drum machines and keyboard synthesizers -- they were originally meant to function as affordable replacements for real instruments (a drum kit, piano or string quartet) and sounded pretty terrible when used in that fashion. Only when people started viewing them as instruments in their own right did they work well (and create previously unheard sounds and genres in the process).
This is quite fun to play around with! Many of the other CA-based music generators I've seen have sounded rather atonal and random compared to this one. Here's one I made using symmetric initial conditions (doing this makes for somewhat interesting visual patterns as well): http://www.earslap.com/projectslab/otomata?q=0q1q2q3q8w8y8p8...
That's partially the result of the chosen scale. Run a set of "up" arrows from the top left to the lower right and it will play the scale. Then go back to just playing around, and you'll hear how that choice colors the results. A different scale choice would have different results. This would combine well with bajsejohannes's idea; you could exert some control over the scale while letting the automata run free.
I like this one because the two left-right components switch the period of the beat on the 5th and 9th rows (themselves also alternating pitch and period) while not breaking the base beat.
I do with the "make link" would let you 'bookmark' a phase: the way it started out went through some cool sequences before stabilizing into this.
I know these kinds of comments are typically frowned upon... but I can't help it.
THIS IS FREAKING AWESOME!
As a professional musician (and computer engineer) I can pretty much immediately pick up/follow/regurgitate nearly any musical pattern... which leads to 99.9% of music boring the crap out of me. But with this after clicking a few dozen times randomly... the music actually sounds great and doesn't bore me... it's soothing even!
It seems to be using the pentatonic scale, which is generally easy to deal with. It is also quite limited though, with only 5 pitches available out of the standard 12 in an octave.
All 12 pitches would sound horrible, you need at least a diatonic scale.
Q: Which scale is used in this? How did you come up with it?
A: D A Bb C D E F A C are the pitches. I used the scale some models of Hang drums are tuned into.
55 comments
[ 8.7 ms ] story [ 81.6 ms ] threadI remember Native Instruments had a Game of Life-based drum pattern sequencer in one of their Reaktor packages.
Have you listened to modern pop music??? :D
This really shouldn't have the problem of repetition. You even make events in the game affect the music, to make it less monotone, and add to the mood of the game. It has been tried, but as far as I know no one has actually published something like this yet.
This is really what makes it _very_ interesting in my opinion. The whole super compressed non-looping music is nice, but having music that responds to your actions in real time can be amazing. More than having music for each level you can have music for each bad guy and even better how the bad guy is "feeling". Speed up the sequencer when they are mad. Start out with a bunch of cells and remove them as a way of showing the health left.
http://www.youtube.com/watch?v=5u5vBAMcLUE
I do think the one linked in this post is a particularly nice one, and yeah the way it develops while maintaining a beat I think is fairly unusual.
It would be really cool to be able to change the number of rows and columns and also the instruments and tones/chords for each row/column.
It's fun opening more than one browser tab and having more than one of these going at once. I refer you to my comment about needing to be able to change the instruments.
http://tones.wolfram.com/
In terms of interesting evolution I keep coming back to this one I just sort of randomly put together: http://www.earslap.com/projectslab/otomata?q=04046g043q515p3...
Here's one I did that develops really nicely.
http://www.earslap.com/projectslab/otomata?q=062m4l6s8q2p610...
Very fun!
http://earslap.com/projectslab/otomata/?q=3z3o43503s
and some lame attempt at "chaos":
http://earslap.com/projectslab/otomata/?q=1h4o2n
(though of course these are just finite state machines and they all loop eventually)
I like this one because the two left-right components switch the period of the beat on the 5th and 9th rows (themselves also alternating pitch and period) while not breaking the base beat.
I do with the "make link" would let you 'bookmark' a phase: the way it started out went through some cool sequences before stabilizing into this.
1 2 3 4 5 6 7 8 9
10 11 12 ...
I had to investigate the primes
Primes less than 20
all up: http://earslap.com/projectslab/otomata/?q=1q2q4q6q1t3t7t
all right: http://earslap.com/projectslab/otomata/?q=1w2w4w6w1y3y7y
all left: http://earslap.com/projectslab/otomata/?q=1r2r4r6r1i3i7i
all primes up : http://earslap.com/projectslab/otomata/?q=1q2q4q6q1t3t7t0o4o...
all right : http://earslap.com/projectslab/otomata/?q=1w2w4w6w1y3y7y0p4p...
all down : http://earslap.com/projectslab/otomata/?q=1e2e4e6e1u3u7u0a4a...
So many ideas... there goes my Sunday afternoon...
http://earslap.com/projectslab/otomata/?q=0o1l2a3t584x6v72
to see what I mean
THIS IS FREAKING AWESOME!
As a professional musician (and computer engineer) I can pretty much immediately pick up/follow/regurgitate nearly any musical pattern... which leads to 99.9% of music boring the crap out of me. But with this after clicking a few dozen times randomly... the music actually sounds great and doesn't bore me... it's soothing even!
Math is beautiful.
Q: Which scale is used in this? How did you come up with it? A: D A Bb C D E F A C are the pitches. I used the scale some models of Hang drums are tuned into.
Changing the scale could be a nice feature...