gl-renderer: move alpha pre-mult from YUV to RGB
Mathematically the result is the same, while multiplying RGB with alpha is easier to understand as correct than the earlier form. Signed-off-by: Pekka Paalanen <pekka.paalanen@collabora.com>
This commit is contained in:
@@ -57,12 +57,11 @@ yuva2rgba(float y, float u, float v, float a)
|
|||||||
{
|
{
|
||||||
vec4 color_out;
|
vec4 color_out;
|
||||||
|
|
||||||
y *= a;
|
|
||||||
u *= a;
|
|
||||||
v *= a;
|
|
||||||
color_out.r = y + 1.59602678 * v;
|
color_out.r = y + 1.59602678 * v;
|
||||||
color_out.g = y - 0.39176229 * u - 0.81296764 * v;
|
color_out.g = y - 0.39176229 * u - 0.81296764 * v;
|
||||||
color_out.b = y + 2.01723214 * u;
|
color_out.b = y + 2.01723214 * u;
|
||||||
|
|
||||||
|
color_out.rgb *= a;
|
||||||
color_out.a = a;
|
color_out.a = a;
|
||||||
|
|
||||||
return color_out;
|
return color_out;
|
||||||
|
|||||||
Reference in New Issue
Block a user