One of the most important components of a video player or a multimedia framework is the video renderer. The quality and performance of the playback greatly depends on it. Despite this, many video players still use obsolete techniques, which cannot fully take advantage of the enormous processing power of modern GPUs.
GStreamer is a powerful multimedia framework, but it lacks a modern video renderer, which could rival similar solutions provided with popular proprietary operating systems. The goal of this project is to develop such a component using OpenGL acceleration.
The project would consist of two major components:
- the video renderer itself, a standalone library, which would be completely independent of GStreamer
- a GStreamer plugin, a video sink, which would use the video rendering library
The library would use OpenGL 2.1 with GLSL shaders to accelerate all video processing stages (color space conversion, color correction, de-interlacing, high quality resampling, compositing). Both on-screen and off-screen (texture or system memory) rendering would be possible, so the library would be also usable for intermediate processing (as a filter element).
Back to TaskList