diff options
author | xbmc <fernetmenta@online.de> | 2012-04-07 09:19:00 +0200 |
---|---|---|
committer | Rainer Hochecker <fernetmenta@online.de> | 2013-09-12 11:37:55 +0200 |
commit | 3b8e8845d154064cd81659d61437ff9ba4dc349b (patch) | |
tree | 1e5827974fe1990bc5fe70e1491c184ea3ab5df9 /system | |
parent | ff9ae39332aef4f2389b4eba3d5c023adcc229ba (diff) |
vdpau: redesign
Diffstat (limited to 'system')
-rw-r--r-- | system/settings/settings.xml | 10 | ||||
-rw-r--r-- | system/shaders/yuv2rgb_basic.glsl | 12 |
2 files changed, 22 insertions, 0 deletions
diff --git a/system/settings/settings.xml b/system/settings/settings.xml index 56710c7429..44a247f1de 100644 --- a/system/settings/settings.xml +++ b/system/settings/settings.xml @@ -375,6 +375,16 @@ <level>2</level> <default>true</default> </setting> + <setting id="videoplayer.usevdpaumixer" type="boolean" label="13437" help="36421"> + <visible>HAVE_LIBVDPAU</visible> + <level>2</level> + <default>true</default> + <control> + <dependencies> + <dependency type="enable" setting="videoplayer.usevdpau" operator="is">true</dependency> <!-- USE VDPAU --> + </dependencies> + </control> + </setting> <setting id="videoplayer.usevaapi" type="boolean" label="13426" help="36156"> <requirement>HAVE_LIBVA</requirement> <level>2</level> diff --git a/system/shaders/yuv2rgb_basic.glsl b/system/shaders/yuv2rgb_basic.glsl index 2ce65a14b4..92b9be70b6 100644 --- a/system/shaders/yuv2rgb_basic.glsl +++ b/system/shaders/yuv2rgb_basic.glsl @@ -69,6 +69,18 @@ void main() rgb.a = gl_Color.a; gl_FragColor = rgb; +#elif defined(XBMC_VDPAU_NV12) + + vec4 yuv, rgb; + yuv.rgba = vec4( texture2D(m_sampY, stretch(m_cordY)).r + , texture2D(m_sampU, stretch(m_cordU)).r + , texture2D(m_sampV, stretch(m_cordV)).g + , 1.0 ); + + rgb = m_yuvmat * yuv; + rgb.a = gl_Color.a; + gl_FragColor = rgb; + #elif defined(XBMC_YUY2) || defined(XBMC_UYVY) #if(XBMC_texture_rectangle) |