I have an application that does video processing such as color transforms, scaling and translations using OpenGL. I'm mostly working with BGRA (1xGL_BGRA) or YUVA (4xGL_R) video, i.e. including alpha.
Now I would also like to do some high quality deinterlacing. I've noticed that Nvidia supports high quality hardware accelerated de-interlacing through their "PureVideo" functionality. Basically what i'd like to do is to send in a interlaced OpenGL texture with x number of color channels and get out two progressive textures.
My question is how do I access this functionality easiest, and most efficiently (possibly in interop with OpenGL)?
I've been looking at DXVA and OpenMax, but both seem rather focused on playback (not deinterlace processing, i.e. non-relevant options such as frame-rate needs to be set etc...) and no-alpha formats...