comparison postproc/swscale.c @ 9413:0d86fe21b281

cleanup
author michael
date Thu, 13 Feb 2003 14:19:05 +0000
parents da162a0d9ae9
children 83fe90af3e16
comparison
equal deleted inserted replaced
9412:ed98b850668d 9413:0d86fe21b281
2017 c->lumYInc= ((srcH<<16) + (dstH>>1))/dstH; 2017 c->lumYInc= ((srcH<<16) + (dstH>>1))/dstH;
2018 c->flags= flags; 2018 c->flags= flags;
2019 c->dstFormat= dstFormat; 2019 c->dstFormat= dstFormat;
2020 c->srcFormat= srcFormat; 2020 c->srcFormat= srcFormat;
2021 2021
2022 c->yCoeff= 0x2568256825682568LL;
2023 c->vrCoeff= 0x3343334333433343LL;
2024 c->ubCoeff= 0x40cf40cf40cf40cfLL;
2025 c->vgCoeff= 0xE5E2E5E2E5E2E5E2LL;
2026 c->ugCoeff= 0xF36EF36EF36EF36ELL;
2027 c->yOffset= 0x0080008000800080LL;
2028 c->uOffset= 0x0400040004000400LL;
2029 c->vOffset= 0x0400040004000400LL;
2030
2022 usesFilter=0; 2031 usesFilter=0;
2023 if(dstFilter->lumV!=NULL && dstFilter->lumV->length>1) usesFilter=1; 2032 if(dstFilter->lumV!=NULL && dstFilter->lumV->length>1) usesFilter=1;
2024 if(dstFilter->lumH!=NULL && dstFilter->lumH->length>1) usesFilter=1; 2033 if(dstFilter->lumH!=NULL && dstFilter->lumH->length>1) usesFilter=1;
2025 if(dstFilter->chrV!=NULL && dstFilter->chrV->length>1) usesFilter=1; 2034 if(dstFilter->chrV!=NULL && dstFilter->chrV->length>1) usesFilter=1;
2026 if(dstFilter->chrH!=NULL && dstFilter->chrH->length>1) usesFilter=1; 2035 if(dstFilter->chrH!=NULL && dstFilter->chrH->length>1) usesFilter=1;
2258 //try to avoid drawing green stuff between the right end and the stride end 2267 //try to avoid drawing green stuff between the right end and the stride end
2259 for(i=0; i<c->vLumBufSize; i++) memset(c->lumPixBuf[i], 0, 4000); 2268 for(i=0; i<c->vLumBufSize; i++) memset(c->lumPixBuf[i], 0, 4000);
2260 for(i=0; i<c->vChrBufSize; i++) memset(c->chrPixBuf[i], 64, 8000); 2269 for(i=0; i<c->vChrBufSize; i++) memset(c->chrPixBuf[i], 64, 8000);
2261 2270
2262 ASSERT(c->chrDstH <= dstH) 2271 ASSERT(c->chrDstH <= dstH)
2263
2264 // pack filter data for mmx code
2265 if(cpuCaps.hasMMX)
2266 {
2267 c->lumMmxFilter= (int16_t*)memalign(8, c->vLumFilterSize* dstH*4*sizeof(int16_t));
2268 c->chrMmxFilter= (int16_t*)memalign(8, c->vChrFilterSize*c->chrDstH*4*sizeof(int16_t));
2269 for(i=0; i<c->vLumFilterSize*dstH; i++)
2270 c->lumMmxFilter[4*i]=c->lumMmxFilter[4*i+1]=c->lumMmxFilter[4*i+2]=c->lumMmxFilter[4*i+3]=
2271 c->vLumFilter[i];
2272 for(i=0; i<c->vChrFilterSize*c->chrDstH; i++)
2273 c->chrMmxFilter[4*i]=c->chrMmxFilter[4*i+1]=c->chrMmxFilter[4*i+2]=c->chrMmxFilter[4*i+3]=
2274 c->vChrFilter[i];
2275 }
2276 2272
2277 if(flags&SWS_PRINT_INFO) 2273 if(flags&SWS_PRINT_INFO)
2278 { 2274 {
2279 #ifdef DITHER1XBPP 2275 #ifdef DITHER1XBPP
2280 char *dither= " dithered"; 2276 char *dither= " dithered";
2666 if(c->hLumFilterPos) free(c->hLumFilterPos); 2662 if(c->hLumFilterPos) free(c->hLumFilterPos);
2667 c->hLumFilterPos = NULL; 2663 c->hLumFilterPos = NULL;
2668 if(c->hChrFilterPos) free(c->hChrFilterPos); 2664 if(c->hChrFilterPos) free(c->hChrFilterPos);
2669 c->hChrFilterPos = NULL; 2665 c->hChrFilterPos = NULL;
2670 2666
2671 if(c->lumMmxFilter) free(c->lumMmxFilter);
2672 c->lumMmxFilter = NULL;
2673 if(c->chrMmxFilter) free(c->chrMmxFilter);
2674 c->chrMmxFilter = NULL;
2675
2676 if(c->lumMmx2Filter) free(c->lumMmx2Filter); 2667 if(c->lumMmx2Filter) free(c->lumMmx2Filter);
2677 c->lumMmx2Filter=NULL; 2668 c->lumMmx2Filter=NULL;
2678 if(c->chrMmx2Filter) free(c->chrMmx2Filter); 2669 if(c->chrMmx2Filter) free(c->chrMmx2Filter);
2679 c->chrMmx2Filter=NULL; 2670 c->chrMmx2Filter=NULL;
2680 if(c->lumMmx2FilterPos) free(c->lumMmx2FilterPos); 2671 if(c->lumMmx2FilterPos) free(c->lumMmx2FilterPos);