Video mixer


    Apr 03 2006 | 3:45 pm
    Does anyone know of a FREE jitter object or abstraction for OS X AND Windows XP that comes close to Kurt Ralske's au.mix? The mixer in 09jMoreMixing has 10 modes while au.mix has 46!
    Any help is greatly appreciated,
    Georg

    • Apr 03 2006 | 4:08 pm
      Not offhand, but it would be extremely simple to modify the jit.alphablend SDK example and do a DIY thing. All you'd have to do is change the inner for loops where the pixels from the 2 images combine to me dependant on a mode message which is already an attribute of jit.alphablend. Then, it's just a matter of doing a switch statement on the mode value.
      best, wes
    • Apr 03 2006 | 7:37 pm
      thats why the Auvi plugins cost money. I suggest the jit.op method of mixing, then you can use any operator as the mixing mode...its quite nice...
      I cant remember which example it is, but its in there...once you extrapolate the info, you can soup it up for more options.
      Computo
    • Apr 03 2006 | 10:04 pm
    • Apr 03 2006 | 10:16 pm
      I might also recommend the jit.gl.slab based compositing operators which provide the photoshop style blend modes, working with GPU acceleration. The source for all files is provided and should demonstrate the formulas that could be used with jit.op if you need to apply them on the CPU.
      See jit.gl.slab-composite.pat for an example.
      -Joshua
    • Apr 03 2006 | 11:48 pm
      Moving this thread to the Jitter forum/list...
      w
    • Apr 04 2006 | 7:28 am
      Hi Joshua,
      Let me see whether I understood you correctly and use the main loop for co.negate.jxs as an example.
      vec4 one = vec4(1.0);
      vec4 a = texture2DRect(tex0, texcoord0); vec4 b = texture2DRect(tex1, texcoord1);
      vec4 output = one - abs(one - a - b);
      Obviously, vec4 one represents the output of the calculation. Now, I looked at jit.op and jit.expr. Would it be possible to create the required feedback without "physically" drawing a patch chord from the output back into the input?
      Georg
    • Apr 04 2006 | 8:01 am
      You can do feedback on the GPU using jit.gl.slab which is really nifty. You can also do it in software using op for instance. Here's an example.
      best, wes
    • Apr 04 2006 | 8:02 am
      PS don't use LSD and the previous patch together.
      wes
    • Apr 04 2006 | 8:38 am
      I can't seem to open some of the patches pasted on this list...(they open as text and never as patch) I believe they might be from windows users? All the ones I can't open, don't start with 'max v2;' If I manually ad that line in the beginning they do open as a patch, but a the max window spews a nr. of '#p: no such object' errors and the patches don't do what they're supposed to do or crash max completely... any tips ?
      b
    • Apr 04 2006 | 8:58 am
      Hi Joshua,
      Let me see whether I understood you correctly and use the main loop for co.negate.jxs as an example.
      vec4 one = vec4(1.0);
      vec4 a = texture2DRect(tex0, texcoord0); vec4 b = texture2DRect(tex1, texcoord1);
      vec4 output = one - abs(one - a - b);
      Obviously, vec4 one represents the output of the calculation. Now, I looked at jit.op and jit.expr. Would it be possible to create the required feedback without "physically" drawing a patch chord from the output back into the input?
      Georg
    • Apr 04 2006 | 9:14 am
      On 4-Apr-2006, at 10:38, Brecht Debackere wrote:
      > All the ones I can't open, don't start with 'max v2;'
      > any tips ?
      Use "New from Clipboard".
      You will also find some other interesting "betcha didn't know" stuff by reading What's New in Max 4.5.5.
      -------------- http://www.bek.no/~pcastine/Litter/ ------------- Peter Castine +--> Litter Power & Litter Bundle for Jitter
      iCE: Sequencing, Recording & |home | chez nous| Interface Building for |bei uns | i nostri| Max/MSP Extremely cool http://www.castine.de http://www.dspaudio.com/
    • Apr 04 2006 | 9:23 am
      since max 4.5 there is a "New from clipboard' menu item under 'file' and that works fine in these cases. I also don't quite understand why the manual cut/paste method stopped working at some point in time, but since upgrading to 4.5 I don't worry about it anymore..
      ciao,
      Joost.
      -------------------------------------------
      Joost Rekveld ----------- http://www.lumen.nu/rekveld
      -------------------------------------------
      "The mystery of the world is the visible, not the invisible" (Oscar Wilde)
      -------------------------------------------
    • Apr 04 2006 | 9:23 am
      Aaaah! Thanks... I new I shouldn't 've jumped straight to the part on prototypes :)
    • Apr 04 2006 | 11:40 am
      Pretty cool, thanks.
      Georg
    • Apr 04 2006 | 5:25 pm
      Massive Max secret: Cycling '74 documents with titles like "Getting Started With...." or "What's New In...." often and intentionally contain real and useful information. The clever person may notice that the Installation information [which is, in many cases, all that is in documents with those titles] lives somewhere else.
    • Apr 04 2006 | 5:31 pm
      On Apr 4, 2006, at 1:58 AM, Georg Hajdu wrote:
      > Let me see whether I understood you correctly and use the main loop > for co.negate.jxs as an example. > > vec4 one = vec4(1.0); > > vec4 a = texture2DRect(tex0, texcoord0); > vec4 b = texture2DRect(tex1, texcoord1); > > vec4 output = one - abs(one - a - b); > > Obviously, vec4 one represents the output of the calculation. Now, > I looked at jit.op and jit.expr. Would it be possible to create > the required feedback without "physically" drawing a patch chord > from the output back into the input?
      No. There is no feedback. vec4 converts the scalar 1.0 to the RGBA vector (1.0 1.0 1.0 1.0). There is no "history" maintained within any shader. Any shader feedback must be accomplished by caching in an externals texture and passing in additional input, though note that such feedback is unnecessary in this case. Please see OpenGL Orange Book and/or online tutorials in GLSL for more info.
      Below is the negate operator ,1.0 - abs(1.0-a-b), as demonstrated with jit.op. Creative use of charmap can also prove useful for improving efficiency of these blend mode calculations. see the jit.charmap math subpatcher for a demonstration of the use of uzi- >expr to generate appropriate lookup tables for char input 0-255.
      -Joshua
    • Apr 04 2006 | 8:55 pm
      Interesting... interesting... I'm learning...Personally I'm more of a mummy returns kind of guy (or any title with the rock or vin diesel) but yes... matrix reloaded was a sublime example of what I'm ultimately trying to accomplish using jitter... I do believe that it is possible to do things with images nowadays right ? I've read something like that on VJs-r-us.com that you can like play clips and stuff with find-edges and emboss...
      cheers big ears.
    • Apr 06 2006 | 4:55 am
      VJs-r-us.com is still unregistered, ladies and gentlemen..... :D