intel / intel/libva

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

Open
#569 5 comments 0 reactions 0 assignees View on GitHub
Dominant language
C
Stars
784
Forks
314
PR merge metrics
No merged PRs in 30d

Description

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

In va/glx/va_glx_impl.c: `static int create_tfp_surface(VADriverContextP ctx, VASurfaceGLXP pSurfaceGLX)`
```
glx_pixmap = pOpenGLVTable->glx_create_pixmap(
ctx->native_dpy,
fbconfig[0],
pixmap,
pixmap_attrs
```
Chossing the first fbconfig[0] breaks applications wanting 8bit config on mesa 18X or newer, or when `allow_rgb10_configs=true` is set.
You should iterate over FBConfig and select 8 bit color size !

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.