comparison postproc/swscale_template.c @ 7351:064ada190b6c

fixing y422p output
author michael
date Mon, 09 Sep 2002 22:48:39 +0000
parents 5c4beb993674
children c6aa14b47d03
comparison
equal deleted inserted replaced
7350:e8c9bfb533ad 7351:064ada190b6c
2501 #endif 2501 #endif
2502 if(dstY < dstH-2) 2502 if(dstY < dstH-2)
2503 { 2503 {
2504 if(isPlanarYUV(dstFormat) || isGray(dstFormat)) //YV12 like 2504 if(isPlanarYUV(dstFormat) || isGray(dstFormat)) //YV12 like
2505 { 2505 {
2506 if((dstY&1) || isGray(dstFormat)) uDest=vDest= NULL; //FIXME split functions in lumi / chromi 2506 const int chrSkipMask= (1<<c->chrDstVSubSample)-1;
2507 if((dstY&chrSkipMask) || isGray(dstFormat)) uDest=vDest= NULL; //FIXME split functions in lumi / chromi
2507 if(vLumFilterSize == 1 && vChrFilterSize == 1) // Unscaled YV12 2508 if(vLumFilterSize == 1 && vChrFilterSize == 1) // Unscaled YV12
2508 { 2509 {
2509 int16_t *lumBuf = lumPixBuf[0]; 2510 int16_t *lumBuf = lumPixBuf[0];
2510 int16_t *chrBuf= chrPixBuf[0]; 2511 int16_t *chrBuf= chrPixBuf[0];
2511 RENAME(yuv2yuv1)(lumBuf, chrBuf, dest, uDest, vDest, dstW, chrDstW); 2512 RENAME(yuv2yuv1)(lumBuf, chrBuf, dest, uDest, vDest, dstW, chrDstW);
2557 { 2558 {
2558 int16_t **lumSrcPtr= lumPixBuf + lumBufIndex + firstLumSrcY - lastInLumBuf + vLumBufSize; 2559 int16_t **lumSrcPtr= lumPixBuf + lumBufIndex + firstLumSrcY - lastInLumBuf + vLumBufSize;
2559 int16_t **chrSrcPtr= chrPixBuf + chrBufIndex + firstChrSrcY - lastInChrBuf + vChrBufSize; 2560 int16_t **chrSrcPtr= chrPixBuf + chrBufIndex + firstChrSrcY - lastInChrBuf + vChrBufSize;
2560 if(isPlanarYUV(dstFormat) || isGray(dstFormat)) //YV12 2561 if(isPlanarYUV(dstFormat) || isGray(dstFormat)) //YV12
2561 { 2562 {
2562 if((dstY&1) || isGray(dstFormat)) uDest=vDest= NULL; 2563 const int chrSkipMask= (1<<c->chrDstVSubSample)-1;
2564 if((dstY&chrSkipMask) || isGray(dstFormat)) uDest=vDest= NULL; //FIXME split functions in lumi / chromi
2563 yuv2yuvXinC( 2565 yuv2yuvXinC(
2564 vLumFilter+dstY*vLumFilterSize , lumSrcPtr, vLumFilterSize, 2566 vLumFilter+dstY*vLumFilterSize , lumSrcPtr, vLumFilterSize,
2565 vChrFilter+chrDstY*vChrFilterSize, chrSrcPtr, vChrFilterSize, 2567 vChrFilter+chrDstY*vChrFilterSize, chrSrcPtr, vChrFilterSize,
2566 dest, uDest, vDest, dstW, chrDstW); 2568 dest, uDest, vDest, dstW, chrDstW);
2567 } 2569 }