Milestone 0.3.3 - Guitar plus beat and harmony analysers
After my (awesome) week long personal music retreat in Manyana, I had managed to make a lot of progress on various aspects of Whole-Play, including finishing a new milestone. Here's a little excerpt, and below some more detailed info if you're interested.
There's several important new elements compared to the previous milestone:
- Guitar input: first of all, and very cool, I can now use my electric guitar to improvise! Thanks to the fantastic TriplePlay MIDI pickup (thanks Bill for pointing me in that direction!), now I can send MIDI from pertty much any electric guitar, which for me is a wonderful thing, since my keyboard skills are somewhat limited.
- MIDI listening!: finally I have some interactivity. Whole-Play now listens to the human improvisation, and is able to collect notes and chords, and then process them to extract musical information (harmony, beat...).
- Beat detection: not perfect but not bad! No time signature yet, so one has to adapt to whatever W-P decides to choose.
- Basic harmonic analysis: this is something I've been exploring during this milestone, and now I have a good idea of how to approach this in a more generic and useful fashion, which is going to be my next area of focus.
- Real-time harmonizations: that is very funky! I want to do so much more in this area, I can imagine so much! :)
And now? So many things to work on, it's exciting and a bit overwhelming simultaneously. First I will work on a generic harmony analyser that will improve some of the limitations of the version in this milestone. Then I want to start making Whole-Play aware of meter, bars and sections, so it can start thinking in terms of structure and development. But also a better drummer, motif detection, better sounds, live mixing, multi-channel output... ok ok, one line of code at a time. :)