Browse Source

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
tags/v0.5
Michael Niedermayer 24 years ago
parent
commit
5486f774bd
2 changed files with 36 additions and 48 deletions
  1. +18
    -24
      postproc/postprocess.c
  2. +18
    -24
      postproc/postprocess_template.c

+ 18
- 24
postproc/postprocess.c View File

@@ -2603,22 +2603,19 @@ static void postProcess(uint8_t src[], int srcStride, uint8_t dst[], int dstStri
memcpyTime+= T1-T0;
T0=T1;
#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)
vertRK1Filter(dstBlock, stride, QP);
else if(mode & V_X1_FILTER)
vertX1Filter(dstBlock, stride, QP);
else
if( isVertDC(dstBlock, stride))
{
if( isVertDC(dstBlock, stride))
{
if(isVertMinMaxOk(dstBlock, stride, QP))
doVertLowPass(dstBlock, stride, QP);
}
else
doVertDefFilter(dstBlock, stride, QP);
if(isVertMinMaxOk(dstBlock, stride, QP))
doVertLowPass(dstBlock, stride, QP);
}
else
doVertDefFilter(dstBlock, stride, QP);
}
#ifdef MORE_TIMING
T1= rdtsc();
@@ -2633,20 +2630,17 @@ static void postProcess(uint8_t src[], int srcStride, uint8_t dst[], int dstStri
#ifdef MORE_TIMING
T0= rdtsc();
#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)
horizX1Filter(dstBlock-4, stride, QP);
else
if( isHorizDCAndCopy2Temp(dstBlock-4, stride))
{
if( isHorizDCAndCopy2Temp(dstBlock-4, stride))
{
if(isHorizMinMaxOk(tempBlock, TEMP_STRIDE, QP))
doHorizLowPassAndCopyBack(dstBlock-4, stride, QP);
}
else
doHorizDefFilterAndCopyBack(dstBlock-4, stride, QP);
if(isHorizMinMaxOk(tempBlock, TEMP_STRIDE, QP))
doHorizLowPassAndCopyBack(dstBlock-4, stride, QP);
}
else
doHorizDefFilterAndCopyBack(dstBlock-4, stride, QP);
}
#ifdef MORE_TIMING
T1= rdtsc();


+ 18
- 24
postproc/postprocess_template.c View File

@@ -2603,22 +2603,19 @@ static void postProcess(uint8_t src[], int srcStride, uint8_t dst[], int dstStri
memcpyTime+= T1-T0;
T0=T1;
#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)
vertRK1Filter(dstBlock, stride, QP);
else if(mode & V_X1_FILTER)
vertX1Filter(dstBlock, stride, QP);
else
if( isVertDC(dstBlock, stride))
{
if( isVertDC(dstBlock, stride))
{
if(isVertMinMaxOk(dstBlock, stride, QP))
doVertLowPass(dstBlock, stride, QP);
}
else
doVertDefFilter(dstBlock, stride, QP);
if(isVertMinMaxOk(dstBlock, stride, QP))
doVertLowPass(dstBlock, stride, QP);
}
else
doVertDefFilter(dstBlock, stride, QP);
}
#ifdef MORE_TIMING
T1= rdtsc();
@@ -2633,20 +2630,17 @@ static void postProcess(uint8_t src[], int srcStride, uint8_t dst[], int dstStri
#ifdef MORE_TIMING
T0= rdtsc();
#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)
horizX1Filter(dstBlock-4, stride, QP);
else
if( isHorizDCAndCopy2Temp(dstBlock-4, stride))
{
if( isHorizDCAndCopy2Temp(dstBlock-4, stride))
{
if(isHorizMinMaxOk(tempBlock, TEMP_STRIDE, QP))
doHorizLowPassAndCopyBack(dstBlock-4, stride, QP);
}
else
doHorizDefFilterAndCopyBack(dstBlock-4, stride, QP);
if(isHorizMinMaxOk(tempBlock, TEMP_STRIDE, QP))
doHorizLowPassAndCopyBack(dstBlock-4, stride, QP);
}
else
doHorizDefFilterAndCopyBack(dstBlock-4, stride, QP);
}
#ifdef MORE_TIMING
T1= rdtsc();


Loading…
Cancel
Save