Skip to content

lima: fixes for yuv dmabuf

Erico Nunes requested to merge enunes/mesa:lima-yuv-external into master

gstreamer was assuming that lima supports YUV planes natively and sending a plane with EGL_YUV_COLOR_SPACE_HINT_EXT directly instead of the expected r and rg textures to do color conversion explicitly. lima does not support yuv textures, setting yuv format dmabufs as external_only prevents that assumption. This is also done by other drivers in mesa.

With this, r and rg textures are passed to do the color space conversion in shaders. In order to support these formats, the pixel formats also have to be enabled as well.

Fixes #3961 (closed)

Fixes #4074 (closed)

WIP: The r and rg textures seem to be minimally working, so maybe we can enable them again. Need to figure out what was not working before. Can probably double check the enum values. Still needs more testing overall.

Edited by Erico Nunes

Merge request reports