# HG changeset patch # User arpi # Date 1034212163 0 # Node ID a3c57c0c4ae27583eaa6b04a716b5147df5067fd # Parent a818bbab1525f2bc577796a53bcc2beca933bb03 don't honor stride hints if the next filter(chain) doesn't support stride diff -r a818bbab1525 -r a3c57c0c4ae2 libmpcodecs/vf.c --- a/libmpcodecs/vf.c Thu Oct 10 00:51:41 2002 +0000 +++ b/libmpcodecs/vf.c Thu Oct 10 01:09:23 2002 +0000 @@ -187,8 +187,17 @@ int align=(mpi->flags&MP_IMGFLAG_PLANAR && mpi->flags&MP_IMGFLAG_YUV) ? (8<chroma_x_shift)-1 : 15; // -- maybe FIXME - mpi->width=w2=((w+align)&(~align)); - mpi->chroma_width=w2>>mpi->chroma_x_shift; + w2=((w+align)&(~align)); + if(mpi->width!=w2){ + // we have to change width... check if we CAN co it: + int flags=vf->query_format(vf,outfmt); // should not fail + if(!(flags&3)) mp_msg(MSGT_DECVIDEO,MSGL_WARN,"??? vf_get_image{vf->query_format(outfmt)} failed!\n"); +// printf("query -> 0x%X \n",flags); + if(flags&VFCAP_ACCEPT_STRIDE){ + mpi->width=w2; + mpi->chroma_width=w2>>mpi->chroma_x_shift; + } + } } // IF09 - allocate space for 4. plane delta info - unused