more logic behavior if the altenative deblock filters are used (turning a alt filter on without turning the deblock filter on uses the alt filter instead of using no filter now)
Originally committed as revision 2301 to svn://svn.mplayerhq.hu/mplayer/trunk/postproc
This commit is contained in:
parent
84adc106cf
commit
5486f774bd
2 changed files with 36 additions and 48 deletions
|
@ -2603,22 +2603,19 @@ static void postProcess(uint8_t src[], int srcStride, uint8_t dst[], int dstStri
|
||||||
memcpyTime+= T1-T0;
|
memcpyTime+= T1-T0;
|
||||||
T0=T1;
|
T0=T1;
|
||||||
#endif
|
#endif
|
||||||
if(mode & V_DEBLOCK)
|
if(mode & V_RK1_FILTER)
|
||||||
|
vertRK1Filter(dstBlock, stride, QP);
|
||||||
|
else if(mode & V_X1_FILTER)
|
||||||
|
vertX1Filter(dstBlock, stride, QP);
|
||||||
|
else if(mode & V_DEBLOCK)
|
||||||
{
|
{
|
||||||
if(mode & V_RK1_FILTER)
|
if( isVertDC(dstBlock, stride))
|
||||||
vertRK1Filter(dstBlock, stride, QP);
|
|
||||||
else if(mode & V_X1_FILTER)
|
|
||||||
vertX1Filter(dstBlock, stride, QP);
|
|
||||||
else
|
|
||||||
{
|
{
|
||||||
if( isVertDC(dstBlock, stride))
|
if(isVertMinMaxOk(dstBlock, stride, QP))
|
||||||
{
|
doVertLowPass(dstBlock, stride, QP);
|
||||||
if(isVertMinMaxOk(dstBlock, stride, QP))
|
|
||||||
doVertLowPass(dstBlock, stride, QP);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
doVertDefFilter(dstBlock, stride, QP);
|
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
doVertDefFilter(dstBlock, stride, QP);
|
||||||
}
|
}
|
||||||
#ifdef MORE_TIMING
|
#ifdef MORE_TIMING
|
||||||
T1= rdtsc();
|
T1= rdtsc();
|
||||||
|
@ -2633,20 +2630,17 @@ static void postProcess(uint8_t src[], int srcStride, uint8_t dst[], int dstStri
|
||||||
#ifdef MORE_TIMING
|
#ifdef MORE_TIMING
|
||||||
T0= rdtsc();
|
T0= rdtsc();
|
||||||
#endif
|
#endif
|
||||||
if(mode & H_DEBLOCK)
|
if(mode & H_X1_FILTER)
|
||||||
|
horizX1Filter(dstBlock-4, stride, QP);
|
||||||
|
else if(mode & H_DEBLOCK)
|
||||||
{
|
{
|
||||||
if(mode & H_X1_FILTER)
|
if( isHorizDCAndCopy2Temp(dstBlock-4, stride))
|
||||||
horizX1Filter(dstBlock-4, stride, QP);
|
|
||||||
else
|
|
||||||
{
|
{
|
||||||
if( isHorizDCAndCopy2Temp(dstBlock-4, stride))
|
if(isHorizMinMaxOk(tempBlock, TEMP_STRIDE, QP))
|
||||||
{
|
doHorizLowPassAndCopyBack(dstBlock-4, stride, QP);
|
||||||
if(isHorizMinMaxOk(tempBlock, TEMP_STRIDE, QP))
|
|
||||||
doHorizLowPassAndCopyBack(dstBlock-4, stride, QP);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
doHorizDefFilterAndCopyBack(dstBlock-4, stride, QP);
|
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
doHorizDefFilterAndCopyBack(dstBlock-4, stride, QP);
|
||||||
}
|
}
|
||||||
#ifdef MORE_TIMING
|
#ifdef MORE_TIMING
|
||||||
T1= rdtsc();
|
T1= rdtsc();
|
||||||
|
|
|
@ -2603,22 +2603,19 @@ static void postProcess(uint8_t src[], int srcStride, uint8_t dst[], int dstStri
|
||||||
memcpyTime+= T1-T0;
|
memcpyTime+= T1-T0;
|
||||||
T0=T1;
|
T0=T1;
|
||||||
#endif
|
#endif
|
||||||
if(mode & V_DEBLOCK)
|
if(mode & V_RK1_FILTER)
|
||||||
|
vertRK1Filter(dstBlock, stride, QP);
|
||||||
|
else if(mode & V_X1_FILTER)
|
||||||
|
vertX1Filter(dstBlock, stride, QP);
|
||||||
|
else if(mode & V_DEBLOCK)
|
||||||
{
|
{
|
||||||
if(mode & V_RK1_FILTER)
|
if( isVertDC(dstBlock, stride))
|
||||||
vertRK1Filter(dstBlock, stride, QP);
|
|
||||||
else if(mode & V_X1_FILTER)
|
|
||||||
vertX1Filter(dstBlock, stride, QP);
|
|
||||||
else
|
|
||||||
{
|
{
|
||||||
if( isVertDC(dstBlock, stride))
|
if(isVertMinMaxOk(dstBlock, stride, QP))
|
||||||
{
|
doVertLowPass(dstBlock, stride, QP);
|
||||||
if(isVertMinMaxOk(dstBlock, stride, QP))
|
|
||||||
doVertLowPass(dstBlock, stride, QP);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
doVertDefFilter(dstBlock, stride, QP);
|
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
doVertDefFilter(dstBlock, stride, QP);
|
||||||
}
|
}
|
||||||
#ifdef MORE_TIMING
|
#ifdef MORE_TIMING
|
||||||
T1= rdtsc();
|
T1= rdtsc();
|
||||||
|
@ -2633,20 +2630,17 @@ static void postProcess(uint8_t src[], int srcStride, uint8_t dst[], int dstStri
|
||||||
#ifdef MORE_TIMING
|
#ifdef MORE_TIMING
|
||||||
T0= rdtsc();
|
T0= rdtsc();
|
||||||
#endif
|
#endif
|
||||||
if(mode & H_DEBLOCK)
|
if(mode & H_X1_FILTER)
|
||||||
|
horizX1Filter(dstBlock-4, stride, QP);
|
||||||
|
else if(mode & H_DEBLOCK)
|
||||||
{
|
{
|
||||||
if(mode & H_X1_FILTER)
|
if( isHorizDCAndCopy2Temp(dstBlock-4, stride))
|
||||||
horizX1Filter(dstBlock-4, stride, QP);
|
|
||||||
else
|
|
||||||
{
|
{
|
||||||
if( isHorizDCAndCopy2Temp(dstBlock-4, stride))
|
if(isHorizMinMaxOk(tempBlock, TEMP_STRIDE, QP))
|
||||||
{
|
doHorizLowPassAndCopyBack(dstBlock-4, stride, QP);
|
||||||
if(isHorizMinMaxOk(tempBlock, TEMP_STRIDE, QP))
|
|
||||||
doHorizLowPassAndCopyBack(dstBlock-4, stride, QP);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
doHorizDefFilterAndCopyBack(dstBlock-4, stride, QP);
|
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
doHorizDefFilterAndCopyBack(dstBlock-4, stride, QP);
|
||||||
}
|
}
|
||||||
#ifdef MORE_TIMING
|
#ifdef MORE_TIMING
|
||||||
T1= rdtsc();
|
T1= rdtsc();
|
||||||
|
|
Loading…
Add table
Reference in a new issue