mirror of https://git.ffmpeg.org/ffmpeg.git
Don't initialize normal horizontal filter if MMX2 filter is used.
Originally committed as revision 30313 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
This commit is contained in:
parent
93fe7eb68d
commit
2e3e8031ec
|
@ -2673,22 +2673,6 @@ SwsContext *sws_getContext(int srcW, int srcH, enum PixelFormat srcFormat, int d
|
|||
|
||||
/* precalculate horizontal scaler filter coefficients */
|
||||
{
|
||||
const int filterAlign=
|
||||
(flags & SWS_CPU_CAPS_MMX) ? 4 :
|
||||
(flags & SWS_CPU_CAPS_ALTIVEC) ? 8 :
|
||||
1;
|
||||
|
||||
if (initFilter(&c->hLumFilter, &c->hLumFilterPos, &c->hLumFilterSize, c->lumXInc,
|
||||
srcW , dstW, filterAlign, 1<<14,
|
||||
(flags&SWS_BICUBLIN) ? (flags|SWS_BICUBIC) : flags,
|
||||
srcFilter->lumH, dstFilter->lumH, c->param) < 0)
|
||||
goto fail;
|
||||
if (initFilter(&c->hChrFilter, &c->hChrFilterPos, &c->hChrFilterSize, c->chrXInc,
|
||||
c->chrSrcW, c->chrDstW, filterAlign, 1<<14,
|
||||
(flags&SWS_BICUBLIN) ? (flags|SWS_BILINEAR) : flags,
|
||||
srcFilter->chrH, dstFilter->chrH, c->param) < 0)
|
||||
goto fail;
|
||||
|
||||
#if defined(COMPILE_MMX2)
|
||||
// can't downscale !!!
|
||||
if (c->canMMX2BeUsed && (flags & SWS_FAST_BILINEAR)) {
|
||||
|
@ -2718,8 +2702,25 @@ SwsContext *sws_getContext(int srcW, int srcH, enum PixelFormat srcFormat, int d
|
|||
mprotect(c->lumMmx2FilterCode, c->lumMmx2FilterCodeSize, PROT_EXEC | PROT_READ);
|
||||
mprotect(c->chrMmx2FilterCode, c->chrMmx2FilterCodeSize, PROT_EXEC | PROT_READ);
|
||||
#endif
|
||||
}
|
||||
} else
|
||||
#endif /* defined(COMPILE_MMX2) */
|
||||
{
|
||||
const int filterAlign=
|
||||
(flags & SWS_CPU_CAPS_MMX) ? 4 :
|
||||
(flags & SWS_CPU_CAPS_ALTIVEC) ? 8 :
|
||||
1;
|
||||
|
||||
if (initFilter(&c->hLumFilter, &c->hLumFilterPos, &c->hLumFilterSize, c->lumXInc,
|
||||
srcW , dstW, filterAlign, 1<<14,
|
||||
(flags&SWS_BICUBLIN) ? (flags|SWS_BICUBIC) : flags,
|
||||
srcFilter->lumH, dstFilter->lumH, c->param) < 0)
|
||||
goto fail;
|
||||
if (initFilter(&c->hChrFilter, &c->hChrFilterPos, &c->hChrFilterSize, c->chrXInc,
|
||||
c->chrSrcW, c->chrDstW, filterAlign, 1<<14,
|
||||
(flags&SWS_BICUBLIN) ? (flags|SWS_BILINEAR) : flags,
|
||||
srcFilter->chrH, dstFilter->chrH, c->param) < 0)
|
||||
goto fail;
|
||||
}
|
||||
} // initialize horizontal stuff
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue