Hi,
Seems that GL_EXT_YUV_target extension is not support with vulkan backend currently.
Any plan to support it?
It's very import,
because sampling texture mapping from ahardwarebuffer with OES_EGL_image_external can't customize the yuv to rgb conversion matrix.
At the same time, Android CTS tests have not covered the color conversion correctness when sampling with OES_EGL_image_external extension.
So if we decode full range yuv format compressed video to ahardwarebuffer(creating with AImageReader, private format),, use OES_EGL_image_external to sample the pixel rgb value from the texture creating from ahardwarebuffer, some device treat the full range yuv data as video range, which cause wrong color.
Beside hardware decoding, sometimes we may use ahardwarebuffer to upload yuv data to texture instead of glTexImage2D because it's more efficient, we have no way to tell the OES_EGL_image_external sampler whether our data is full range or video range.
With GL_EXT_YUV_target , we can use our own color conversion matrix, so we can get the right rgb color data.
So, if angle doesn't support GL_EXT_YUV_target extension, we have no way to resolve this problem.
Any plan to support this extension? Android is planing to switch to angle as the OpenGL ES driver, and samsung s22 ultra have already done. It's too bad this thing can't be resolved.