+ i_chroma_backup = p_vout->output.i_chroma;
+
+ if( !I_OUTPUTPICTURES )
+ {
+ /* hmmm, it didn't work! Let's try commonly supported chromas */
+ p_vout->output.i_chroma = FOURCC_YV12;
+ NewPictureVec( p_vout, p_vout->p_picture, MAX_DIRECTBUFFERS );
+ if( !I_OUTPUTPICTURES )
+ {
+ /* hmmm, it didn't work! Let's try commonly supported chromas */
+ p_vout->output.i_chroma = FOURCC_YUY2;
+ NewPictureVec( p_vout, p_vout->p_picture, MAX_DIRECTBUFFERS );
+ }
+ }
+
+ if( !I_OUTPUTPICTURES )
+ {
+ /* If it still didn't work then don't try to use an overlay */
+ p_vout->output.i_chroma = i_chroma_backup;
+ p_vout->p_sys->b_using_overlay = 0;
+ NewPictureVec( p_vout, p_vout->p_picture, MAX_DIRECTBUFFERS );
+ }
+