MIDI Reactive Visuals

    Dec 03 2013 | 6:08 pm
    I'm completely new to max and I'm currently working on a patch for some midi reactive visuals, I was hoping some of you may be able to give me a helping hand? I want some effects (contrast, brightness, saturation) to be reactive to midi signals but my effects don't seem to be doing anything and I'm not too sure what else I've forgotten that may be needed so I'll leave a screen print of the patch below.

    • Dec 03 2013 | 7:34 pm
      Maybe have a read of the Max tutorial on Basic MIDI. Also Max Basic Tutorial 3 Numbers and Lists - should help. Once you've read them it should be simple enough to pick an object and send it MIDI notes. You might have to use the [scale] object to scale MIDI values to values you can use with the object you choose.
    • Dec 03 2013 | 7:35 pm
      sorry not MIDI notes - MIDI CC's
    • Dec 03 2013 | 8:50 pm
      Thanks! That's such a big help :D I've been stuck on this patch for a month so now I have some info to go ahead with.
    • Dec 04 2013 | 1:58 pm
      Send your movie into a jit.gl.slab effect (brocosa if I'm correct) this has the brightness,contrast and saturation effects all in one and works with very basic messages. Eg. brightness $1. Then plug this into a video plane. With this setup you move your video processing onto the GPU which is far more efficient.
    • Dec 04 2013 | 2:29 pm
      I honestly have a very basic understanding of Max (I'm currently learning it at uni but my tutors only deal with Synths not visuals) so if you could elaborate on what you said would be great!
    • Dec 05 2013 | 4:39 pm
    • Dec 05 2013 | 4:40 pm
      Here you go. I used jit.gl.pix for the brightness/contrast/saturation instead of jit.gl.slab. I really advise you checking out the cycling 74 examples map for amazing examples of video processing !
    • Dec 05 2013 | 9:07 pm
      Thank you so much! You've been such a great help. I've incorporated it into my patch and it's working very nicely! I just need to tweak some little things and it'll be perfect. I'll check them out, I had a look before and found it very interesting but was a little over whelming since I had no idea about what they were talking about, I'm starting to understand it all though I think it's just something I'll pick up over time.
    • Dec 06 2013 | 12:33 pm
      I found open gl much easier to learn than jitter matrixes (which I'm still learning now) the hardest thing to get your head around is the destination context. Every open gl object such as jit.gl.pix,jit.gl.videplane need a destination context (in the case of this patch the context is jit.gl.render Movie) by stating the destination you tell each object "what it's associated with". The jit.gl.render then sends its output to jit.window. Just try getting some jit.gl.slab/jit.gl.pix effects from the example folder and inserting them into the video feed, you can plug them all into each other, eg, slab 1 to slab 2 to slab 3 and so on. By putting a gate between each jit.gl.slab you can send the video to the effect or bypass it completely. The videoplane is just there as a "virtual window", any texture you send it will be displayed as if it's in a window. So you could easily make 2 videoplanes each with their own movie and put one on each half of the screen by moving them with the position $1 $2 $3 (x y z) command. Just experiment and you'll be off in no time !