I ended up leaving the system unchanged from the milestone, save for retuning the vocoder into A major instead of Ab major. I spent hours trying to iron out a new paradigm for the Wekinator mappings, where the training examples were not hand-picked random states mapped to random series of inputs, but I failed miserably. I wanted to map the ABXY pad to eight notes of the scale (including octave), with other buttons adding voices, reverb, or a low pass, but I ended up with a much less expressive version of the tool. I then focused my attention to scoring a performance as much as I could, choosing to cover “Hide and Seek” by Imogen Heap, as it was almost the main inspiration for this tool. In addition, the message of the song (if you really read into the lyrics) seems very fitting for the proliferation of AI in our day and age. Thank you sincerely for checking out my work! This was so much fun; what a class, right?
Well, I went into this project with an attitude caused by the atonality of my last programming etude, swearing to the class that I would do something more musical soon. I bounced ideas around in my head for a while, my Notion page saying things like “Xbox controller scale music using AI?" and “open-ended and light, take care of yourself," and “live performance? hold down one button for arpeggiation, interpolate between inputs, etc." Today (March 13th, the day before the milestone deadline), the idea dawned on me to manipulate a harmonic vocoder with the Xbox controller, mediated by Wekinator.
Before I go any further, I have to cite and thank Orchisama Das for their Chuck-o-der final project for 220A, whose incredible signal processing through upchucks and FFT magnitude spectrum modulation made this project possible.
The vocoder lies in Ab major. The base synthesizer topology is three saw wave voices modulated by a triangle wave, in a voicing such that the first voice is the root note, the second voice is the fifth above, and the third voice is an octave and a third above. There are 8 OSC parameters, in order as follows: