[client] added support for RGBA, BGRA and 10-bit RGBA

This commit is contained in:
Geoffrey McRae
2018-12-04 21:23:28 +11:00
parent 1beeac545d
commit 75ffcacfe4
7 changed files with 54 additions and 15 deletions

View File

@@ -278,12 +278,24 @@ bool egl_on_frame_event(void * opaque, const LG_RendererFormat format, const uin
switch(format.type)
{
case FRAME_TYPE_ARGB:
case FRAME_TYPE_BGRA:
this->pixFmt = EGL_PF_BGRA;
this->shader = this->shaders.bgra;
this->frameSize = format.height * format.pitch;
break;
case FRAME_TYPE_RGBA:
this->pixFmt = EGL_PF_RGBA;
this->shader = this->shaders.rgba;
this->frameSize = format.height * format.pitch;
break;
case FRAME_TYPE_RGBA10:
this->pixFmt = EGL_PF_RGBA10;
this->shader = this->shaders.rgba;
this->frameSize = format.height * format.pitch;
break;
case FRAME_TYPE_YUV420:
this->pixFmt = EGL_PF_YUV420;
this->shader = this->shaders.yuv;
@@ -291,6 +303,7 @@ bool egl_on_frame_event(void * opaque, const LG_RendererFormat format, const uin
break;
default:
DEBUG_ERROR("Unsupported frame format");
return false;
}