Instructions for my project (Windows)
Some instructions for anyone who wants to try my project.
https://cycling74.com/project/colour-motion/
Posting this here as well for reference or any questions.
If you want to use it on a mac you just change jit.dx.grab. to the normal jit.qt.grab and you won't need midiyoke you lucky people.
**Instructions for use (windows)**:
What you need. A camera or webcam, A red or green light both is great, some sort of DAW with midi instruments is ideal, midiyoke for linking midi to DAW from max
1. Download the max runtime for windows if you dont have max/msp/jitter. Then download and install midiyoke.
2. Send me a quick email, mattwestwick(at)hotmail.co.uk and I will send you the program. Or download from.
https://www.dropbox.com/s/1i02aqlfe278dre/matts%20colormin.maxpat?dl=0
Currently saving the $$£$ for Max since my trial ran out so no easy copy n paste links, sorry.
3. Open the file with the runtime window
4. Hit the “Gevdevlist” button to find your video devices i.e. webcam
5. Check the square box at the top left and then press the open button. You should now see a video feed on the screen.
6. In the green red and blue boxes on the screen you will see little rectangles that say noteout and ctlout: Double click and set these to output midiyoke channel 1 for the green and blue boxes and set the noteout and ctlout in the red box to midiyoke channel 2. The red box/light is the lead part and the green light is chords. You can use your computers built in midi but they sound awful. Most programs like garage band and cubase have nice midi sounds.
7. Open your DAW with 2 midi channels set up and change their input to midiyoke 1 and midiyoke 2 respectively and select whatever midi vst instrument you want. I chose a slow attack synth for the chords and a smooth tone with portamento set high for the theremin sound.
8. Turn off the lights in your room and use your red and green lights or colours to play the instrument. The sliders on the screen should follow the colours but if not then adjust the brightness, contrast and saturation levels until they track them well. Turn down your monitor brightness not to shine light onto yourself.
9. Enjoy
This looks good, My guess is you'll find the softVNS lib by David Rokeby useful to continue developing this, (once you got the money for max ;-))
I have thought about using the likes of OpenCV but I prefer to code things from scratch. Slight OCD but knowing where everything is and how it works makes me feel good. I even made my own makenote patch variant because I didn't like makenote.
However I will take a peek at softVNS as it would likely save a lot of time.
The next step is movement recognition such as making shapes or lines with your hands so this could come in handy. I know how I would do it from the ground up but time is a commodity for me.
The annoying thing about MAX is that it allows all these crazy ideas in my head to be feasible when I don't have the time and have to decide on one route.
P.S. Got the money for the 9 month trial. That should cover me until I am famous and wealthy enough to purchase the full thing.
Matt