[gst-devel] Google Summer of Code: advanced OpenGL video mixer/renderer
fthiery at gmail.com
Thu Mar 20 16:31:53 CET 2008
> I'm planning to write an OpenGL accelerated video mixer/renderer library: AXVR
> (Accelerated Cross-platform Video Renderer). Its main features will be:
> * all calculations done using OpenGL 2.1 and GLSL
> * support for many planar and packed video formats
> * correct color space conversion taking into account chroma siting,
> primaries, nominal range, etc.
> * asynchronous high speed video uploading using pixel buffer objects
> * high quality resampling (including chroma upsampling): bicubic, Lanczos
> * pixel-based motion and edge adaptive de-interlacing with automatic
> telecine supporting arbitrary cadences
> * 3D noise filter
> * color correction
> * video mixing using alpha blending
> This library would represent the first part of the project. The second part
> would be a gstreamer plugin which would use this library.
> What do you think about this project? I can give more details about it,
> because I've made some good progress on the design.
Indeed this is a very interesting project.
I myself am investigating a similar one, based on the clutter
framework (http://www.clutter-project.org) -- more animated video
compositing oriented ; it can do offscreen rendering, supports FBOs
and shaders already. Fluendo's Pigment API would be a very nice
starting point as well (i'd be surprised if a pigment-based gst video
mixing plugin isn't on a roadmap yet ;)
Would you mind giving more details ?
Nice proposal IMHO, gstreamer's existing video mixing elements are
already very capable yet not hardware accelerated, nor 3D-capable. In
my gstreamer applications, most of the CPU is eaten by decoding or
encoding, so GPU power that is left is a huge benefit !
More information about the gstreamer-devel