[gstreamer-bugs] [Bug 572767] Should error out instead of doing nothing if an OpenGL feature is not present

GStreamer (bugzilla.gnome.org) bugzilla-daemon at bugzilla.gnome.org
Wed Aug 5 01:11:14 PDT 2009


If you have any questions why you received this email, please see the text at
the end of this email. Replies to this email are NOT read, please see the text
at the end of this email. You can add comments to this bug at:
  http://bugzilla.gnome.org/show_bug.cgi?id=572767

  GStreamer | gst-plugins-gl | Ver: 0.10.x




------- Comment #5 from Filippo Argiolas  2009-08-05 08:11 UTC -------
IMHO, this could be solved in the following way.

1. gldisplay should provide some kind of "feature checking" infrastructure:
  - a flag structure (GstGLFeatureFlags flags)
  - a bunch of feature checks in gldisplay init function, something like:

     if (GLEW_ARB_shading_language_100) flags |= GST_GL_FEATURE_GLSL;
     if (some more complex check) flags |= GST_GL_FEATURE_FBO;

  - some public utility method for feature checking
(gst_gl_feature(s)_available?) that just check the flags structure
  - replace all "if (GLEW_stuff)" calls with custom flags checking

2. all base elements (upload, filter, download) could then check needed
features (glfilter should provide a vmethod for custom subclasses dependencies)
in the prepare_output_buffer function return FLOW_ERROR on fail

3. Maybe we could manually handle state changes and do the checks in
NULL->READY as Olivier suggested, but 1 and 2 should be enough for now.


Note that we could just use glew everywhere but this way we could have some
more complex custom check if needed and eventually get rid of glew in the
future.


-- 
See http://bugzilla.gnome.org/page.cgi?id=email.html for more info about why you received
this email, why you can't respond via email, how to stop receiving
emails (or reduce the number you receive), and how to contact someone
if you are having problems with the system.

You can add comments to this bug at http://bugzilla.gnome.org/show_bug.cgi?id=572767.




More information about the Gstreamer-bugs mailing list