simultaneous mixing

    May 24 2006 | 12:04 pm
    Hi there,
    I try to mix two qtmovies( i use single frames in the moment with the importmovie-message) and blend them( i use the jit.op.object) The problem is that I want two switch between the frames of two sources independently. But the jit.op-object just allows two trigger a blending when i bang the left inlet. That means the second source is depending always on the first.( alphablend inhabits the same obstacle) Any suggestions how i could blend two sources but at the same time switch between frames of the sources independently ?

    • May 24 2006 | 1:00 pm
      Have your second source generate a bang when it loads or receives a new matrix, and route the bang message to the jit.op object. In general, sending a bang message to the left outlet of the majority of Max objects will instruct them to perform an operation, or perform it *again.* Here is a really basic Max dataflow example that you can adapt for your needs....
    • May 25 2006 | 6:22 pm
      Hey, thanks for the fast reply!
      I tried it....but probably i am just to stupid.....
      Here is my tryoutpatch, maybe you see immediately whats wrong about it. It still happens that when i bang the importmovie-messages 3 + 4 that nothing happens....
    • May 25 2006 | 6:47 pm
      I don't think that it's about stupidity. I just think you need to spend a little time with the tutorials getting a good sense of how Max works. Unless I completely misunderstand what it is you want to do (load a static image, trigger the jit.op object when either one of two images is loaded), you really don't need quite a lot of this patch at all - just the jit.matrix objects (and the importmovie message) feeding the jit.op stuff with a few well-placed buttons for bangs. I would REALLY suggest spending some time woodshedding with the tutorials - the Jitter stuff so that you understanding about loading matrices, and the Max stuff so that dataflow and controlling the order in which things are done makes sense to you. The good news is that it ought to become sort of clear pretty quickly where the trouble lies.
    • May 27 2006 | 3:35 pm
      Hmm, alright I will have another look at the tutorials. The weird thing is just that i found out that when I want to change frames seperately( and simultaneously) in jit.glue, there is a message called "syncinlet", and if you give it the attribute "-1", it does exactly what i would like the op-object to do. Is there any message like that for the op-object?
      O.K.,whatever, thanks.
    • May 27 2006 | 7:03 pm
      No, that's a rather specialized case; I'd expect to find it for that object, given what it does.
      1. Here's the deal: Nearly everything in Max/MSP/Jitter uses what's called "lazy evaluation." In general, unless you have an object specifically created to do otherwise (either a complete external such as pak, or a mode of operation such as would be the case with jit.glue), you bang the leftmost inlet to trigger calculations.
      The example patch I sent you a few emails back demonstrates how you use buttons (which send bang messages) to explicitly trigger outlets with inputs other than the left inlet. That's how you do it in all but a very few cases.
      2. Similarly, you can nearly always set the value of a left inlet *without* triggering a calculation by using the "set" message.
      Two really really basic principles that will serve you well. I can certainly understand how you could stumble upon a random counterexample to the way that Max generally works and - if you don't know how Max works in the general sense, which is what the tutorials are supposed to give you a sense of - mistake that for "expected" behavior (You could as easily have decided that everything should work like the pak object, and we'd be having the same discussion). So now you know.