- case VLC_FOURCC('Y','U','Y','2'):
- case VLC_FOURCC('Y','U','N','V'):
- p_vout->output.i_chroma = VLC_FOURCC('Y','U','Y','2');
- i_sdl_chroma = SDL_YUY2_OVERLAY;
- break;
- case VLC_FOURCC('U','Y','V','Y'):
- case VLC_FOURCC('U','Y','N','V'):
- case VLC_FOURCC('Y','4','2','2'):
- p_vout->output.i_chroma = VLC_FOURCC('U','Y','V','Y');
- i_sdl_chroma = SDL_UYVY_OVERLAY;
- break;
- case VLC_FOURCC('Y','V','Y','U'):
- p_vout->output.i_chroma = VLC_FOURCC('Y','V','Y','U');
- i_sdl_chroma = SDL_YVYU_OVERLAY;
- break;
- case VLC_FOURCC('Y','V','1','2'):
- case VLC_FOURCC('I','4','2','0'):
- case VLC_FOURCC('I','Y','U','V'):
- default:
- p_vout->output.i_chroma = VLC_FOURCC('Y','V','1','2');
- i_sdl_chroma = SDL_YV12_OVERLAY;
- break;
- }
- free( psz_chroma ); psz_chroma = NULL;
+ if( !psz_chroma ) i_chroma = 0;
+ switch( i_chroma ? i_chroma : p_vout->render.i_chroma )
+ {
+ case VLC_FOURCC('Y','U','Y','2'):
+ case VLC_FOURCC('Y','U','N','V'):
+ p_vout->output.i_chroma = VLC_FOURCC('Y','U','Y','2');
+ i_sdl_chroma = SDL_YUY2_OVERLAY;
+ break;
+ case VLC_FOURCC('U','Y','V','Y'):
+ case VLC_FOURCC('U','Y','N','V'):
+ case VLC_FOURCC('Y','4','2','2'):
+ p_vout->output.i_chroma = VLC_FOURCC('U','Y','V','Y');
+ i_sdl_chroma = SDL_UYVY_OVERLAY;
+ break;
+ case VLC_FOURCC('Y','V','Y','U'):
+ p_vout->output.i_chroma = VLC_FOURCC('Y','V','Y','U');
+ i_sdl_chroma = SDL_YVYU_OVERLAY;
+ break;
+ case VLC_FOURCC('Y','V','1','2'):
+ case VLC_FOURCC('I','4','2','0'):
+ case VLC_FOURCC('I','Y','U','V'):
+ default:
+ p_vout->output.i_chroma = VLC_FOURCC('Y','V','1','2');
+ i_sdl_chroma = SDL_YV12_OVERLAY;
+ break;
+ }
+ free( psz_chroma ); psz_chroma = NULL;