width % 16 != 0 workaround by (Nicolas Plourde: nicolas plourde, gmail com>)
cleanup by me indention fixed second one must be yv12touyvy instead of yv12toyuy2 replace slow modulo by bitwise and move %16!=0 code before the comment saying the code cant handle %16!=0 Originally committed as revision 15825 to svn://svn.mplayerhq.hu/mplayer/trunk/postproc
This commit is contained in:
parent
edfaf6de29
commit
d926e8c5c3
@ -400,6 +400,11 @@ static inline int yv12toyuy2_unscaled_altivec(SwsContext *c, uint8_t* src[], int
|
|||||||
const int vertLumPerChroma = 2;
|
const int vertLumPerChroma = 2;
|
||||||
register unsigned int y;
|
register unsigned int y;
|
||||||
|
|
||||||
|
if(width&15){
|
||||||
|
yv12toyuy2( ysrc, usrc, vsrc, dst,c->srcW,srcSliceH, lumStride, chromStride, dstStride);
|
||||||
|
return srcSliceH;
|
||||||
|
}
|
||||||
|
|
||||||
/* this code assume:
|
/* this code assume:
|
||||||
|
|
||||||
1) dst is 16 bytes-aligned
|
1) dst is 16 bytes-aligned
|
||||||
@ -474,6 +479,11 @@ static inline int yv12touyvy_unscaled_altivec(SwsContext *c, uint8_t* src[], int
|
|||||||
const vector unsigned char yperm = vec_lvsl(0, ysrc);
|
const vector unsigned char yperm = vec_lvsl(0, ysrc);
|
||||||
register unsigned int y;
|
register unsigned int y;
|
||||||
|
|
||||||
|
if(width&15){
|
||||||
|
yv12touyvy( ysrc, usrc, vsrc, dst,c->srcW,srcSliceH, lumStride, chromStride, dstStride);
|
||||||
|
return srcSliceH;
|
||||||
|
}
|
||||||
|
|
||||||
/* this code assume:
|
/* this code assume:
|
||||||
|
|
||||||
1) dst is 16 bytes-aligned
|
1) dst is 16 bytes-aligned
|
||||||
|
Loading…
x
Reference in New Issue
Block a user