Mercurial > mplayer.hg
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); |