[vlc-devel] commit: Win32: bugfix for blueish video colors useing DirectX Overlay Output ( André Weber )

git version control git at videolan.org
Sat Sep 12 22:01:32 CEST 2009


vlc | branch: master | André Weber <atmo at videolan.org> | Sat Sep 12 19:02:47 2009 +0200| [2faa3d9d9d5d728e88dffa41ef50836b956e25df] | committer: André Weber 

Win32: bugfix for blueish video colors useing DirectX Overlay Output

The fourcc of I420 was not recognized durring vout init so a fallback to YV12
was used - which flipped the U and V colorplanes.

(I'am not sure if this is the correct solution for this, a developer knowing
the video output more in detail should have a look on this.)

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=2faa3d9d9d5d728e88dffa41ef50836b956e25df
---

 modules/video_output/msw/directx.c |    7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)

diff --git a/modules/video_output/msw/directx.c b/modules/video_output/msw/directx.c
index 5733045..f740852 100644
--- a/modules/video_output/msw/directx.c
+++ b/modules/video_output/msw/directx.c
@@ -366,7 +366,13 @@ static int Init( vout_thread_t *p_vout )
         case VLC_CODEC_YVYU:
             p_vout->output.i_chroma = VLC_CODEC_YVYU;
             break;
+        case VLC_CODEC_I420:
+            p_vout->output.i_chroma = VLC_CODEC_I420;
+            break;
         default:
+            msg_Dbg( p_vout, "use default chroma YV12 for render " \
+                             "chroma (%4.4s)",
+                             (char *)&p_vout->render.i_chroma);
             p_vout->output.i_chroma = VLC_CODEC_YV12;
             break;
     }
@@ -1618,6 +1624,7 @@ static int UpdatePictureStruct( vout_thread_t *p_vout, picture_t *p_pic )
 
             /* U and V inverted compared to I420
              * Fixme: this should be handled by the vout core */
+            /* could this be right? */
             p_vout->output.i_chroma = VLC_CODEC_I420;
 
             p_pic->Y_PIXELS = p_pic->p_sys->ddsd.lpSurface;




More information about the vlc-devel mailing list