[Bug 777409] New: pluginbase: Query for OpenGL app_context

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Tue Jan 17 22:33:21 UTC 2017


https://bugzilla.gnome.org/show_bug.cgi?id=777409

            Bug ID: 777409
           Summary: pluginbase: Query for OpenGL app_context
    Classification: Platform
           Product: GStreamer
           Version: git master
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: Normal
         Component: gstreamer-vaapi
          Assignee: gstreamer-bugs at lists.freedesktop.org
          Reporter: mattfischer84 at gmail.com
        QA Contact: gstreamer-bugs at lists.freedesktop.org
                CC: bsreerenj at gmail.com, vjaquez at igalia.com
     GNOME version: ---

Created attachment 343677
  --> https://bugzilla.gnome.org/attachment.cgi?id=343677&action=edit
pluginbase: Query for OpenGL app_context

Currently the VAAPI plugins perform a query for gst.gl.local_context in order
to find an OpenGL context.  I've run into some situations where this doesn't
work, because the element is being used in a setting where the full pipeline
hasn't yet been hooked up (this seems to happen in some decodebin
configurations).  In these cases, the query doesn't work because it can't make
it all the way to the element which has the context.

Normally, the last resort one can use to solve this problem is to set up a sync
bus handler and provide a gst.gl.app_context, which the plugin will then use to
construct a local context.  This is the pattern used by most of the OpenGL
plugins.  However, the VAAPI plugins don't do this, so providing a context
through a sync bus handler is not possible.

I've put together a patch which adds this behavior, bringing the VAAPI plugins
in line with how the rest of the OpenGL plugins work.  The existing behavior of
querying for a local_context is still preferred, however in cases where one
can't be found, it now falls back to the app_context search.

This allowed me to get around the situation I was facing, so I wanted to submit
the patch upstream and hopefully have it accepted here so that others will not
experience the same issue.

-- 
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