[gl] support YUV420P10->RGB in software renderer
authorJonathan Marshall <jmarshall@xbmc.org>
Sun, 23 Feb 2014 06:47:35 +0000 (19:47 +1300)
committerJonathan Marshall <jmarshall@xbmc.org>
Sun, 23 Feb 2014 18:53:51 +0000 (07:53 +1300)
xbmc/cores/VideoRenderers/LinuxRendererGL.cpp

index 08a261a..f37d090 100644 (file)
@@ -48,6 +48,7 @@
 #include "RenderCapture.h"
 #include "RenderFormats.h"
 #include "cores/IPlayer.h"
+#include "cores/dvdplayer/DVDCodecs/DVDCodecUtils.h"
 
 #ifdef HAVE_LIBVDPAU
 #include "cores/dvdplayer/DVDCodecs/Video/VDPAU.h"
@@ -3116,9 +3117,11 @@ void CLinuxRendererGL::ToRGBFrame(YV12Image* im, unsigned flipIndexPlane, unsign
   int      srcStride[4] = {};
   int      srcFormat    = -1;
 
-  if (m_format == RENDER_FMT_YUV420P)
+  if (m_format == RENDER_FMT_YUV420P ||
+      m_format == RENDER_FMT_YUV420P10 ||
+      m_format == RENDER_FMT_YUV420P16)
   {
-    srcFormat = PIX_FMT_YUV420P;
+    srcFormat = CDVDCodecUtils::PixfmtFromEFormat(m_format);
     for (int i = 0; i < 3; i++)
     {
       src[i]       = im->plane[i];