summaryrefslogtreecommitdiffstats
path: root/postproc/postprocess_template.c
diff options
context:
space:
mode:
authormichael <michael@b3059339-0415-0410-9bf9-f77b7e298cf2>2001-12-28 13:56:04 +0000
committermichael <michael@b3059339-0415-0410-9bf9-f77b7e298cf2>2001-12-28 13:56:04 +0000
commit0c4138440d91db5ce6a36e60c5616c427b1619ec (patch)
tree8257ce353372314ad682022f56ec867d75ff56a1 /postproc/postprocess_template.c
parent2ef40475313bda1b608b6d53cb787d7d04061997 (diff)
downloadmpv-0c4138440d91db5ce6a36e60c5616c427b1619ec.tar.bz2
mpv-0c4138440d91db5ce6a36e60c5616c427b1619ec.tar.xz
minor brightness/contrast bugfix / moved some global vars into ppMode
non mmx compilation bugfix git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@3833 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'postproc/postprocess_template.c')
-rw-r--r--postproc/postprocess_template.c21
1 files changed, 15 insertions, 6 deletions
diff --git a/postproc/postprocess_template.c b/postproc/postprocess_template.c
index 8ceeab1d00..6ad9819858 100644
--- a/postproc/postprocess_template.c
+++ b/postproc/postprocess_template.c
@@ -2615,11 +2615,20 @@ static void RENAME(postProcess)(uint8_t src[], int srcStride, uint8_t dst[], int
long long memcpyTime=0, vertTime=0, horizTime=0, sumTime;
sumTime= rdtsc();
#endif
-//mode= 0x7F;
+
+ dcOffset= ppMode->maxDcDiff;
+ dcThreshold= ppMode->maxDcDiff*2 + 1;
+
#ifdef HAVE_MMX
maxTmpNoise[0]= ppMode->maxTmpNoise[0];
maxTmpNoise[1]= ppMode->maxTmpNoise[1];
maxTmpNoise[2]= ppMode->maxTmpNoise[2];
+
+ mmxDCOffset= 0x7F - dcOffset;
+ mmxDCThreshold= 0x7F - dcThreshold;
+
+ mmxDCOffset*= 0x0101010101010101LL;
+ mmxDCThreshold*= 0x0101010101010101LL;
#endif
if(mode & CUBIC_IPOL_DEINT_FILTER) copyAhead=16;
@@ -2662,8 +2671,8 @@ static void RENAME(postProcess)(uint8_t src[], int srcStride, uint8_t dst[], int
if(mode & FULL_Y_RANGE)
{
- maxAllowedY=255;
- minAllowedY=0;
+ ppMode->maxAllowedY=255;
+ ppMode->minAllowedY=0;
}
}
@@ -2703,14 +2712,14 @@ static void RENAME(postProcess)(uint8_t src[], int srcStride, uint8_t dst[], int
clipped-= yHistogram[white];
}
- scale= (double)(maxAllowedY - minAllowedY) / (double)(white-black);
+ scale= (double)(ppMode->maxAllowedY - ppMode->minAllowedY) / (double)(white-black);
#ifdef HAVE_MMX2
packedYScale= (uint16_t)(scale*256.0 + 0.5);
- packedYOffset= (((black*packedYScale)>>8) - minAllowedY) & 0xFFFF;
+ packedYOffset= (((black*packedYScale)>>8) - ppMode->minAllowedY) & 0xFFFF;
#else
packedYScale= (uint16_t)(scale*1024.0 + 0.5);
- packedYOffset= (black - minAllowedY) & 0xFFFF;
+ packedYOffset= (black - ppMode->minAllowedY) & 0xFFFF;
#endif
packedYOffset|= packedYOffset<<32;