Most efficent way to draw video as window background?


I have raw video data (in ARGB format but with alpha not used) which I want to draw covering the whole background of my app window, with a few semi-transparent controls drawn on top.  I'm wondering what's the most efficient way to do it, on Windows and OS X.

  - What's the fastest way to get the raw data into an Image?

  - Should I use a specific ImageType?

  - Should I convert the data to RGB or is there a way to tell a ARGB image to ignore the alpha channel?

  - The controls change much less often than the video, so would it help to use setCachedComponentImage for them so they are faster to blend onto the background?

Thanks for any tips.



Using an openGL renderer would help a lot if you need to resize the image to fit.


And what if I'm not resizing... is there a most efficient way to get ARGB data into a RGB image ignoring the alpha channel?



The quickest way would probably still be to just push it to the GPU in whatever format is simplest, then use shaders to shuffle the data around once it's there.