However, someone on the cycling74 forums posted a very simple idea; break it into two patches. One with a bang that triggers the samples, and another that let me control max with kinect. Then I'd just connect them together. It was stupidly simple, but I tried it.
I used the samples I'd created from logic earlier - seven split second long notes from Logic's basic MIDI electric keyboard sound, one for each note in the C blues scale.
I then successfully created the first patch. Whenever I triggered a bang, the sample attached to it would play. That was the easy part; the hard part was getting kinect to respond to it.
To do this, I downloaded and used Kinect-Via-Synapse, a prepare Max patch created to be used with synapse, which I explained in a previous post. I thought I would have to spend days programming my own patch to be used with Synapse, but much to my amazement, after I set up the parameters in K-V-S, it did the rest of the work for me. Whenever I moved my hand (or whatever limb I assigned to it) the values on KVS would change.
I spent a good deal of time trying to set up K-V-S in a way that would suit what I wanted, but it never seemed to work. I was worried about this until I decided to connect my patch to synapse in order to do some early troubleshooting, when I realised that without me having to do anything, Synapse was automatically working with the first patch I'd created. If I assigned a limb to a sample, it triggered the bang that played it. I was very pleased and impressed that synapse had done this, and at how simple it was for me to connect it - all I had to do was create a new synapse object in my patch and assign what limb it would follow, and over what axis.
My next problem was a major one, though; the sample would be triggered the second Kinect picked me up, and it would play non stop until I turned it off. I didn't want this; I wanted it to only play once when a certain value was reached. After a lot of trial and error, I found that the "onebang", "kslider" and "clip" objects were the ones that I needed. The onebang would solve the problem of my sample playing over and over, the slider and attached numbers box would let me know the where and when my samples would be triggered, and the clip box would let me assign at what value my samples would be triggered.
I set a rough number for each sample, and again, after much trial and error assigning various samples to different limbs and axis, I found that if I was just to use my hands, as per my original idea, it would be much easier. Max and Kinect didn't respond so well to my knees, torso and head joints. This also meant that who ever was soloing would have limited access to what they could play and when.
So instead, I assigned the samples to both hands, and had them set to different points on my x and y axis. Right hand up would trigger a note, right hand down would trigger a note, left hand up and down would trigger different notes, right hand side to side would trigger different notes, and one left hand movement to one side would trigger the final one.
Again, after much trial and error dancing about in front of the Macs in the computer room, I found a combination of movements that would be simplest to pick up.
I had to spend a lot of time adjusting when and where the notes would get triggered, as notes could clip very easily. I also had to overcome the problem of how notes were triggered; some would only be triggered if you moved your hand down and back up again for example, which was in no way ideal. I fixed this by using the scale tool, and reversed the scale so that values would go from top to bottom rather than from bottom to top, meaning they could be triggered if I moved my hand in the opposite direction.
I spent an entire day working out the values at which the notes would be triggered, and focused on keeping it simple. When performance day came, however, I found a lot of my work to be in vain however, as Kinect decided to work a little differently with my patch after I'd saved and closed it, which I will discuss in my next post, where I will talk about the performance itself...
No comments:
Post a Comment