From: Laurent Aimar Date: Thu, 3 Nov 2011 19:28:51 +0000 (+0100) Subject: Workaround for video size incompatible with the colorspace. X-Git-Tag: 1.2.0-pre1~8 X-Git-Url: https://git.sesse.net/?a=commitdiff_plain;h=b7fa472646be6827643257209ccfab4102ae0190;p=vlc Workaround for video size incompatible with the colorspace. Close #4206. --- diff --git a/src/input/decoder.c b/src/input/decoder.c index c285becafe..ce878a9732 100644 --- a/src/input/decoder.c +++ b/src/input/decoder.c @@ -2345,6 +2345,18 @@ static picture_t *vout_new_buffer( decoder_t *p_dec ) fmt.i_chroma = p_dec->fmt_out.i_codec; p_owner->video = fmt; + if( vlc_fourcc_IsYUV( fmt.i_chroma ) ) + { + vlc_chroma_description_t *dsc = vlc_fourcc_GetChromaDescription( fmt.i_chroma ); + for( int i = 0; dsc && i < dsc->plane_count; i++ ) + { + while( fmt.i_width % dsc->p[i].w.den ) + fmt.i_width++; + while( fmt.i_height % dsc->p[i].h.den ) + fmt.i_height++; + } + } + if( !fmt.i_visible_width || !fmt.i_visible_height ) { if( p_dec->fmt_in.video.i_visible_width &&