# HG changeset patch # User michael # Date 1003499772 0 # Node ID 3e0dcdb6b3403a2faa51c8a2216c4b3459f0577e # Parent a2c063b6ecf96d0e92d25b3bb4043b4bf019b9c9 added compiletime option to turn width%8==0 on diff -r a2c063b6ecf9 -r 3e0dcdb6b340 libpostproc/postprocess.c --- a/libpostproc/postprocess.c Fri Oct 19 13:41:38 2001 +0000 +++ b/libpostproc/postprocess.c Fri Oct 19 13:56:12 2001 +0000 @@ -2561,6 +2561,7 @@ if(!isColor) yHistogram[ srcBlock[srcStride*5] ]++; +#ifdef PP_FUNNY_STRIDE //can we mess with a 8x16 block, if not use a temp buffer, yes again if(x+7 >= width) { @@ -2577,6 +2578,7 @@ dstBlock= tempDstBlock; srcBlock= tempSrcBlock; } +#endif blockCopy(dstBlock + dstStride*5, dstStride, srcBlock + srcStride*5, srcStride, 8, mode & LEVEL_FIX); @@ -2657,6 +2659,7 @@ dering(dstBlock - stride*9 + width-9, stride, QP); //FIXME dering filter will not be applied to last block (bottom right) +#ifdef PP_FUNNY_STRIDE /* did we use a tmp-block buffer */ if(x+7 >= width) { @@ -2669,6 +2672,7 @@ memcpy(dstBlock+i*dstStride, tempDstBlock+i*dstStride, width-x); } } +#endif dstBlock+=8; srcBlock+=8; diff -r a2c063b6ecf9 -r 3e0dcdb6b340 libpostproc/postprocess.h --- a/libpostproc/postprocess.h Fri Oct 19 13:41:38 2001 +0000 +++ b/libpostproc/postprocess.h Fri Oct 19 13:56:12 2001 +0000 @@ -59,6 +59,9 @@ #define GET_PP_QUALITY_MAX 6 +//must be defined if stride%8 != 0 +#define PP_FUNNY_STRIDE + //#define TIMING //#define MORE_TIMING diff -r a2c063b6ecf9 -r 3e0dcdb6b340 libpostproc/postprocess_template.c --- a/libpostproc/postprocess_template.c Fri Oct 19 13:41:38 2001 +0000 +++ b/libpostproc/postprocess_template.c Fri Oct 19 13:56:12 2001 +0000 @@ -2561,6 +2561,7 @@ if(!isColor) yHistogram[ srcBlock[srcStride*5] ]++; +#ifdef PP_FUNNY_STRIDE //can we mess with a 8x16 block, if not use a temp buffer, yes again if(x+7 >= width) { @@ -2577,6 +2578,7 @@ dstBlock= tempDstBlock; srcBlock= tempSrcBlock; } +#endif blockCopy(dstBlock + dstStride*5, dstStride, srcBlock + srcStride*5, srcStride, 8, mode & LEVEL_FIX); @@ -2657,6 +2659,7 @@ dering(dstBlock - stride*9 + width-9, stride, QP); //FIXME dering filter will not be applied to last block (bottom right) +#ifdef PP_FUNNY_STRIDE /* did we use a tmp-block buffer */ if(x+7 >= width) { @@ -2669,6 +2672,7 @@ memcpy(dstBlock+i*dstStride, tempDstBlock+i*dstStride, width-x); } } +#endif dstBlock+=8; srcBlock+=8;