Open Bug 1667621 Opened 1 year ago Updated 4 months ago

EGL/X11 does not suport 10-bit color depth

Categories

(Core :: Graphics, enhancement)

Firefox 81
x86_64
Linux
enhancement

Tracking

()

UNCONFIRMED

People

(Reporter: pdunn+firefox, Unassigned, NeedInfo)

References

(Blocks 2 open bugs)

Details

Attachments

(2 files)

User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:81.0) Gecko/20100101 Firefox/81.0

Steps to reproduce:

Adjusting xorg.conf to:
Section "Screen"
DefaultDepth 30 #default is 24
EndSection

And start firefox (tested 81/82 beta/83 nightly) with MOZ_X11_EGL=1.

Actual results:

Webrender will no longer work when combined with MOZ_X11_EGL=1.

[user@Device ~]$ env MOZ_X11_EGL=1 firefox
Can't find symbol 'eglGetNativeClientBufferANDROID'.
Can't find symbol 'eglQuerySurfacePointerANGLE'.
Can't find symbol 'eglCreateStreamProducerD3DTextureANGLE'.
Can't find symbol 'eglStreamPostD3DTextureANGLE'.
[GFX1-]: Failed to create EGLConfig for WebRender with depth!
[GFX1-]: Failed to create EGLConfig for WebRender with depth!
[GFX1-]: Failed GL context creation for WebRender: 0
[GFX1-]: Failed to connect WebRenderBridgeChild.
[GFX1-]: Failed to create EGLConfig for WebRender with depth!
[GFX1-]: Failed to create EGLConfig for WebRender with depth!
[GFX1-]: [OPENGL] Failed to init compositor with reason: FEATURE_FAILURE_OPENGL_CREATE_CONTEXT

All works as expected without MOZ_X11_EGL, but then there is no vaapi support.

Expected results:

I would have expected X11_EGL to support 30bit colour depth, and thus hardware decoding support through vaapi

Component: Untriaged → General
OS: Unspecified → Linux
Hardware: Unspecified → x86_64

To be clear:
Xorg DefaultDepth 24 + MOZ_X11_EGL=1 works (and i get vaapi)
Xorg DefaultDepth 30 + MOZ_X11_EGL=1 broken (this report)
Xorg DefaultDepth 30 no MOZ_X11_EGL works (but ofc no vaapi, which was the goal)

Blocks: linux-egl
Component: General → Graphics
Product: Firefox → Core
Severity: -- → S3
Flags: needinfo?(stransky)

You should use DefaultDepth 24. DefaultDepth 30 meas 10-bit colors which is not supported by Firefox.

Flags: needinfo?(stransky)

This may be an enhancement request as 10-bit colors are not supported right now.

Summary: DefaultDepth 30 in Xorg causes "Failed to create EGLConfig for WebRender with depth!" with MOZ_X11_EGL=1 → EGL/X11 does not suport 10-bit color depth
Type: defect → enhancement
Blocks: 1239510
See Also: → 1699864

Pdunn, does this still happen for you in nightly? IIUC it should be fixed by now (by hardcoding 32bit contexts). Thanks!

Flags: needinfo?(pdunn+firefox)
You need to log in before you can comment on or make changes to this bug.