aboutsummaryrefslogtreecommitdiff
path: root/system/shaders
diff options
context:
space:
mode:
authordavilla <davilla@4pi.com>2013-10-17 19:12:06 -0400
committerdavilla <davilla@4pi.com>2013-10-17 19:22:25 -0400
commit0b24f567b687fd715c1e6f41ce2f324c6292fda7 (patch)
tree6cdab7b6a3433f3ea66f4c0fe3e2133ca2667190 /system/shaders
parent525a527ebc216883c938ba0f98663f21c3b48c61 (diff)
gles: fixed, add missing nv12 render format
Diffstat (limited to 'system/shaders')
-rw-r--r--system/shaders/yuv2rgb_basic_gles.glsl6
1 files changed, 5 insertions, 1 deletions
diff --git a/system/shaders/yuv2rgb_basic_gles.glsl b/system/shaders/yuv2rgb_basic_gles.glsl
index 963b1de881..07bae91e8b 100644
--- a/system/shaders/yuv2rgb_basic_gles.glsl
+++ b/system/shaders/yuv2rgb_basic_gles.glsl
@@ -28,10 +28,14 @@ varying vec2 m_cordV;
uniform float m_alpha;
uniform mat4 m_yuvmat;
+// handles both YV12 and NV12 formats
void main()
{
vec4 yuv, rgb;
- yuv.rgba = vec4(texture2D(m_sampY, m_cordY).r, texture2D(m_sampU, m_cordU).r, texture2D(m_sampV, m_cordV).r, 1.0);
+ yuv.rgba = vec4( texture2D(m_sampY, m_cordY).r
+ , texture2D(m_sampU, m_cordU).g
+ , texture2D(m_sampV, m_cordV).a
+ , 1.0);
rgb = m_yuvmat * yuv;
rgb.a = m_alpha;