I got really into Markov chains a while back and started analyzing Jazz solos, but using the current harmony, beat, and note durations as part of the state I tracked.<p>The results were promising I thought. Though I wouldn't call them great (they tend towards long, fast runs that are statistically possible, but unrealistic), they do have a touch of musicality that simpler analysis often lack.<p>It's all old Lisp code that I need to resurrect, but I found an .mp3 of generated blues solo from an analysis of Coltrane's Blue Train: <a href="https://soundcloud.com/spankalee/markov-blue-train" rel="nofollow">https://soundcloud.com/spankalee/markov-blue-train</a>
It would be better to feed this tool with hooktheory's API containing common chord progressions...<p><a href="https://news.ycombinator.com/item?id=9394176" rel="nofollow">https://news.ycombinator.com/item?id=9394176</a>
Algorithmic composition is a decently-sized field. Here's a textbook:<p><a href="http://www.amazon.com/Algorithmic-Composition-Paradigms-Automated-Generation/dp/321175539X" rel="nofollow">http://www.amazon.com/Algorithmic-Composition-Paradigms-Auto...</a><p>And some more examples:<p><a href="http://algorithmiccomposition.org/" rel="nofollow">http://algorithmiccomposition.org/</a>
Will it be possible to write a filter on top of this to eliminate invalid/dissonant outputs based on music theory -- e.g. key signature, beat, harmonics etc?<p>Edit: Try listening to only the first bar of each sample at the bottom of the page. It almost sounds like the beginning of a proper composition. The only problem is that subsequent bars don't match. Fix that and I think there's something great here.
Cool, it reminds me of one of my very old project : <a href="http://robhub.github.io/melogen/@auto.swf" rel="nofollow">http://robhub.github.io/melogen/@auto.swf</a> (sorry, Flash, I know..)
However, it would require tons more work to make something interesting.
It's a shame that DarwinTunes didn't become more popular.<p><a href="http://darwintunes.org/" rel="nofollow">http://darwintunes.org/</a><p>I'd like to see something that combines user-guided evolution and markov chains.
Nothing really new here, I've seen multiple blog posts about how to do exactly that thing using exactly the same methods. But everything I've seen so far is pretty primitive, as it constructs a sequence of tones completely disregarding the rhythmic part, and I'm not sure if treating them as separate things is actually good idea: at least it deserves another blog post exploring if there should be some relationship between tone and rhythm in order to produce good results.