diff options
Diffstat (limited to 'src/qtmultimediaquicktools/shaders/triplanaryuvvideo_core.frag')
-rw-r--r-- | src/qtmultimediaquicktools/shaders/triplanaryuvvideo_core.frag | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/qtmultimediaquicktools/shaders/triplanaryuvvideo_core.frag b/src/qtmultimediaquicktools/shaders/triplanaryuvvideo_core.frag new file mode 100644 index 000000000..ad81083f5 --- /dev/null +++ b/src/qtmultimediaquicktools/shaders/triplanaryuvvideo_core.frag @@ -0,0 +1,19 @@ +#version 150 core +uniform sampler2D plane1Texture; +uniform sampler2D plane2Texture; +uniform sampler2D plane3Texture; +uniform mat4 colorMatrix; +uniform float opacity; +in vec2 plane1TexCoord; +in vec2 plane2TexCoord; +in vec2 plane3TexCoord; +out vec4 fragColor; + +void main() +{ + float Y = texture(plane1Texture, plane1TexCoord).r; + float U = texture(plane2Texture, plane2TexCoord).r; + float V = texture(plane3Texture, plane3TexCoord).r; + vec4 color = vec4(Y, U, V, 1.); + fragColor = colorMatrix * color * opacity; +} |