fbconfig[0] is not 8 bits RGB with Mesa 18.x or newer

Liu, Leo Leo.Liu at amd.com
Thu Feb 7 12:47:32 UTC 2019


+Victor.

Received a bounced message:

being held until the list moderator can review it for approval.

On 2019-02-07 7:33 a.m., Leo Liu wrote:

Hi,

Mesa is enabled "allow_rgb10_configs" by default. Note that 10bpc affects both GLX and EGL. The requirement from EGL is that 10bpc formats must be first in the list of configs. This breaks applications that just use the first config, which used to be 8bpc and now it's 10bpc. Here's related bug report and some discussions from Mesa list:

https://bugs.freedesktop.org/show_bug.cgi?id=109548

https://lists.freedesktop.org/archives/mesa-dev/2019-February/214610.html

It's affecting Totem player, and gstreamer pipeline like:

`gst-launch-1.0 -f filesrc location=/path/to/mp4 ! qtdemux ! h264parse ! vaapih264dec ! glimagesink`

The current code  @gstreamer-vaapi/gst-libs/gst/vaapi/gstvaapiutils_glx.c::gl_create_pixmap_object (Display * dpy, guint width, guint height)

fbconfig = glXChooseFBConfig (dpy, screen, fbconfig_attrs, &n_fbconfig_attrs);

 pixo->glx_pixmap = gl_vtable->glx_create_pixmap (dpy,
      fbconfig[0], pixo->pixmap, pixmap_attrs);

The EGL spec requires that the config with the highest bpc must be first, so we hope application could iterate over the returned array of fbconfigs and select the one which returns red=8 from glXGetFBConfigAttrib.


Regards,

Leo








-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20190207/34e440df/attachment.html>


More information about the gstreamer-devel mailing list