[Bug 729278] gl: avoid using an extra FBO pass in some basic cases
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Sun May 25 04:17:33 PDT 2014
https://bugzilla.gnome.org/show_bug.cgi?id=729278
GStreamer | gst-plugins-bad | git
--- Comment #5 from Matthew Waters <ystreet00 at gmail.com> 2014-05-25 11:17:27 UTC ---
Ok, all of these cases are as a result of glcolorconvert/glupload/gldownload
implementations/interoperability. Also, case 1 and 3 are functionally the same
(avoiding the shader conversion).
The current process of say a glfilter is like so:
input buffer -> upload -> colorconvert -> filter transform -> colorconvert ->
download -> output buffer.
This is a list of changes I would do:
1. separate the colorconvert from upload and download objects
2. separate the different upload/download cases into different subobjects.
3. have upload/download/colorconvert allocate their own output buffers (from a
glbufferpool).
4. use GstBuffers everywhere
I believe these changes would solve the three cases. Each object gets the
choice to reuse existing or allocate new buffers that are cached in a (possibly
shared) pool and thus can optimise the identity transformations away. It would
also be easier to understand and maintain.
Doing it like this essentially makes the upload/colorconvert/download
essentially mini-GstElements and it might be prudent to upgrade them (or
provide wrappers) to normal GstElements and plug them inside a glfilter/glmixer
like bin as needed.
Thoughts?
--
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the gstreamer-bugs
mailing list