Mercurial > libavcodec.hg
diff libpostproc/postprocess.c @ 182:3ccd74a91074 libavcodec
minor brightness/contrast bugfix / moved some global vars into ppMode
non mmx compilation bugfix
author | michael |
---|---|
date | Fri, 28 Dec 2001 13:56:04 +0000 |
parents | edc5f6cf1855 |
children | d310beb2d848 |
line wrap: on
line diff
--- a/libpostproc/postprocess.c Fri Dec 28 00:09:55 2001 +0000 +++ b/libpostproc/postprocess.c Fri Dec 28 13:56:04 2001 +0000 @@ -47,6 +47,7 @@ /* TODO: +remove global/static vars reduce the time wasted on the mem transfer implement everything in C at least (done at the moment but ...) unroll stuff if instructions depend too much on the prior one @@ -153,15 +154,12 @@ int vFlatnessThreshold= 56 - 16; int deringThreshold= 20; -static int dcOffset= 1; -static int dcThreshold= 3; +static int dcOffset; +static int dcThreshold; //amount of "black" u r willing to loose to get a brightness corrected picture double maxClippedThreshold= 0.01; -int maxAllowedY=234; -int minAllowedY=16; - static struct PPFilter filters[]= { {"hb", "hdeblock", 1, 1, 3, H_DEBLOCK}, @@ -672,6 +670,7 @@ ppMode.minAllowedY= 16; ppMode.maxAllowedY= 234; for(o=0; options[o]!=NULL; o++) + { if( !strcmp(options[o],"fullyrange") ||!strcmp(options[o],"f")) { @@ -679,6 +678,7 @@ ppMode.maxAllowedY= 255; numOfUnknownOptions--; } + } } else if(filters[i].mask == TEMP_NOISE_FILTER) { @@ -704,6 +704,9 @@ else if(filters[i].mask == V_DEBLOCK || filters[i].mask == H_DEBLOCK) { int o; + ppMode.maxDcDiff=1; +// hFlatnessThreshold= 40; +// vFlatnessThreshold= 40; for(o=0; options[o]!=NULL && o<2; o++) { @@ -712,16 +715,7 @@ if(tail==options[o]) break; numOfUnknownOptions--; - if(o==0) - { - dcOffset= val; - dcThreshold= 2*val+1; - mmxDCOffset= 0x7F - val; - mmxDCThreshold= 0x7F - 2*val - 1; - - mmxDCOffset*= 0x0101010101010101LL; - mmxDCThreshold*= 0x0101010101010101LL; - } + if(o==0) ppMode.maxDcDiff= val; else hFlatnessThreshold= vFlatnessThreshold= val; } @@ -800,6 +794,9 @@ ppMode.maxTmpNoise[0]= 700; ppMode.maxTmpNoise[1]= 1500; ppMode.maxTmpNoise[2]= 3000; + ppMode.maxAllowedY= 234; + ppMode.minAllowedY= 16; + ppMode.maxDcDiff= 1; #ifdef HAVE_ODIVX_POSTPROCESS // Note: I could make this shit outside of this file, but it would mean one