Increasing the performance of a videoplane patch


    May 18 2006 | 4:30 pm
    hi there, I wrote a little patch to play two 1024 x 768px footages, and blend the edges between them (to use two projectors). I use 4 jit.gl.videoplanes. Two for the movies and two for blending alpha values that I generate with adjustable greyscale matrixes. (I draw one video and one blending videoplane on each of the two jit.window objects.) As I am not that much experienced with OpenGL, I would like to know if there is a faster way to achive my goal. I am working pretty much on the edge of my hardware power, so I wouldn't mind increasing the performance speed a bit. As I am always filling the hole videoplane and window, does it make any sense to send an 'erase' message before every new frame to the jit.gl.render objects? It would be great to get some comments on the patch how to improve it. (you don't have to tell me about the movie encoding, I am just intersted in possibilities to boost the speed within the patch.)
    thanks a lot
    .tom

    • May 18 2006 | 5:23 pm
      Hi Tom, It looks like your patch is pretty efficient as is. I do recommend using an erase message to jit.gl.render before banging the other objects. Most likely, it is an issue with reading the large movie files from disk.
      FWIW, it wouldn't be difficult to write a custom shader that added a linear gradient for the alpha channel, which would eliminate the need for multiple videoplanes. In the next version of Jitter we will have a couple of included shaders that will help with this sort of thing.
      Also, I should note that the gradient can be generated by simply sending a "exprfill norm[0]" message to the jit.matrix object. Not really a performance issue, but certainly more compact.
      Cheers, Andrew B.