Originally committed as revision 12557 to svn://svn.ffmpeg.org/ffmpeg/trunk
| ... | ... |
@@ -926,8 +926,8 @@ static void reallocBuffers(PPContext *c, int width, int height, int stride, int |
| 926 | 926 |
|
| 927 | 927 |
for(i=0; i<3; i++){
|
| 928 | 928 |
//Note: The +17*1024 is just there so i do not have to worry about r/w over the end. |
| 929 |
- reallocAlign((void **)&c->tempBlured[i], 8, stride*mbHeight*16 + 17*1024); |
|
| 930 |
- reallocAlign((void **)&c->tempBluredPast[i], 8, 256*((height+7)&(~7))/2 + 17*1024);//FIXME size |
|
| 929 |
+ reallocAlign((void **)&c->tempBlurred[i], 8, stride*mbHeight*16 + 17*1024); |
|
| 930 |
+ reallocAlign((void **)&c->tempBlurredPast[i], 8, 256*((height+7)&(~7))/2 + 17*1024);//FIXME size |
|
| 931 | 931 |
} |
| 932 | 932 |
|
| 933 | 933 |
reallocAlign((void **)&c->deintTemp, 8, 2*width+32); |
| ... | ... |
@@ -969,8 +969,8 @@ void pp_free_context(void *vc){
|
| 969 | 969 |
PPContext *c = (PPContext*)vc; |
| 970 | 970 |
int i; |
| 971 | 971 |
|
| 972 |
- for(i=0; i<3; i++) av_free(c->tempBlured[i]); |
|
| 973 |
- for(i=0; i<3; i++) av_free(c->tempBluredPast[i]); |
|
| 972 |
+ for(i=0; i<3; i++) av_free(c->tempBlurred[i]); |
|
| 973 |
+ for(i=0; i<3; i++) av_free(c->tempBlurredPast[i]); |
|
| 974 | 974 |
|
| 975 | 975 |
av_free(c->tempBlocks); |
| 976 | 976 |
av_free(c->yHistogram); |
| ... | ... |
@@ -800,7 +800,7 @@ static inline void dering_altivec(uint8_t src[], int stride, PPContext *c) {
|
| 800 | 800 |
#define do_a_deblock_altivec(a...) do_a_deblock_C(a) |
| 801 | 801 |
|
| 802 | 802 |
static inline void RENAME(tempNoiseReducer)(uint8_t *src, int stride, |
| 803 |
- uint8_t *tempBlured, uint32_t *tempBluredPast, int *maxNoise) |
|
| 803 |
+ uint8_t *tempBlurred, uint32_t *tempBlurredPast, int *maxNoise) |
|
| 804 | 804 |
{
|
| 805 | 805 |
const vector signed int zero = vec_splat_s32(0); |
| 806 | 806 |
const vector signed short vsint16_1 = vec_splat_s16(1); |
| ... | ... |
@@ -808,9 +808,9 @@ static inline void RENAME(tempNoiseReducer)(uint8_t *src, int stride, |
| 808 | 808 |
vector signed int v_sysdp = zero; |
| 809 | 809 |
int d, sysd, i; |
| 810 | 810 |
|
| 811 |
- tempBluredPast[127]= maxNoise[0]; |
|
| 812 |
- tempBluredPast[128]= maxNoise[1]; |
|
| 813 |
- tempBluredPast[129]= maxNoise[2]; |
|
| 811 |
+ tempBlurredPast[127]= maxNoise[0]; |
|
| 812 |
+ tempBlurredPast[128]= maxNoise[1]; |
|
| 813 |
+ tempBlurredPast[129]= maxNoise[2]; |
|
| 814 | 814 |
|
| 815 | 815 |
#define LOAD_LINE(src, i) \ |
| 816 | 816 |
register int j##src##i = i * stride; \ |
| ... | ... |
@@ -832,18 +832,18 @@ static inline void RENAME(tempNoiseReducer)(uint8_t *src, int stride, |
| 832 | 832 |
LOAD_LINE(src, 6); |
| 833 | 833 |
LOAD_LINE(src, 7); |
| 834 | 834 |
|
| 835 |
- LOAD_LINE(tempBlured, 0); |
|
| 836 |
- LOAD_LINE(tempBlured, 1); |
|
| 837 |
- LOAD_LINE(tempBlured, 2); |
|
| 838 |
- LOAD_LINE(tempBlured, 3); |
|
| 839 |
- LOAD_LINE(tempBlured, 4); |
|
| 840 |
- LOAD_LINE(tempBlured, 5); |
|
| 841 |
- LOAD_LINE(tempBlured, 6); |
|
| 842 |
- LOAD_LINE(tempBlured, 7); |
|
| 835 |
+ LOAD_LINE(tempBlurred, 0); |
|
| 836 |
+ LOAD_LINE(tempBlurred, 1); |
|
| 837 |
+ LOAD_LINE(tempBlurred, 2); |
|
| 838 |
+ LOAD_LINE(tempBlurred, 3); |
|
| 839 |
+ LOAD_LINE(tempBlurred, 4); |
|
| 840 |
+ LOAD_LINE(tempBlurred, 5); |
|
| 841 |
+ LOAD_LINE(tempBlurred, 6); |
|
| 842 |
+ LOAD_LINE(tempBlurred, 7); |
|
| 843 | 843 |
#undef LOAD_LINE |
| 844 | 844 |
|
| 845 | 845 |
#define ACCUMULATE_DIFFS(i) \ |
| 846 |
- vector signed short v_d##i = vec_sub(v_tempBluredAss##i, \ |
|
| 846 |
+ vector signed short v_d##i = vec_sub(v_tempBlurredAss##i, \ |
|
| 847 | 847 |
v_srcAss##i); \ |
| 848 | 848 |
v_dp = vec_msums(v_d##i, v_d##i, v_dp); \ |
| 849 | 849 |
v_sysdp = vec_msums(v_d##i, vsint16_1, v_sysdp) |
| ... | ... |
@@ -869,16 +869,16 @@ static inline void RENAME(tempNoiseReducer)(uint8_t *src, int stride, |
| 869 | 869 |
|
| 870 | 870 |
i = d; |
| 871 | 871 |
d = (4*d |
| 872 |
- +(*(tempBluredPast-256)) |
|
| 873 |
- +(*(tempBluredPast-1))+ (*(tempBluredPast+1)) |
|
| 874 |
- +(*(tempBluredPast+256)) |
|
| 872 |
+ +(*(tempBlurredPast-256)) |
|
| 873 |
+ +(*(tempBlurredPast-1))+ (*(tempBlurredPast+1)) |
|
| 874 |
+ +(*(tempBlurredPast+256)) |
|
| 875 | 875 |
+4)>>3; |
| 876 | 876 |
|
| 877 |
- *tempBluredPast=i; |
|
| 877 |
+ *tempBlurredPast=i; |
|
| 878 | 878 |
|
| 879 | 879 |
if (d > maxNoise[1]) {
|
| 880 | 880 |
if (d < maxNoise[2]) {
|
| 881 |
-#define OP(i) v_tempBluredAss##i = vec_avg(v_tempBluredAss##i, v_srcAss##i); |
|
| 881 |
+#define OP(i) v_tempBlurredAss##i = vec_avg(v_tempBlurredAss##i, v_srcAss##i); |
|
| 882 | 882 |
|
| 883 | 883 |
OP(0); |
| 884 | 884 |
OP(1); |
| ... | ... |
@@ -890,7 +890,7 @@ static inline void RENAME(tempNoiseReducer)(uint8_t *src, int stride, |
| 890 | 890 |
OP(7); |
| 891 | 891 |
#undef OP |
| 892 | 892 |
} else {
|
| 893 |
-#define OP(i) v_tempBluredAss##i = v_srcAss##i; |
|
| 893 |
+#define OP(i) v_tempBlurredAss##i = v_srcAss##i; |
|
| 894 | 894 |
|
| 895 | 895 |
OP(0); |
| 896 | 896 |
OP(1); |
| ... | ... |
@@ -910,11 +910,11 @@ static inline void RENAME(tempNoiseReducer)(uint8_t *src, int stride, |
| 910 | 910 |
|
| 911 | 911 |
#define OP(i) \ |
| 912 | 912 |
const vector signed short v_temp##i = \ |
| 913 |
- vec_mladd(v_tempBluredAss##i, \ |
|
| 913 |
+ vec_mladd(v_tempBlurredAss##i, \ |
|
| 914 | 914 |
vsint16_7, v_srcAss##i); \ |
| 915 | 915 |
const vector signed short v_temp2##i = \ |
| 916 | 916 |
vec_add(v_temp##i, vsint16_4); \ |
| 917 |
- v_tempBluredAss##i = vec_sr(v_temp2##i, vuint16_3) |
|
| 917 |
+ v_tempBlurredAss##i = vec_sr(v_temp2##i, vuint16_3) |
|
| 918 | 918 |
|
| 919 | 919 |
OP(0); |
| 920 | 920 |
OP(1); |
| ... | ... |
@@ -931,11 +931,11 @@ static inline void RENAME(tempNoiseReducer)(uint8_t *src, int stride, |
| 931 | 931 |
|
| 932 | 932 |
#define OP(i) \ |
| 933 | 933 |
const vector signed short v_temp##i = \ |
| 934 |
- vec_mladd(v_tempBluredAss##i, \ |
|
| 934 |
+ vec_mladd(v_tempBlurredAss##i, \ |
|
| 935 | 935 |
vsint16_3, v_srcAss##i); \ |
| 936 | 936 |
const vector signed short v_temp2##i = \ |
| 937 | 937 |
vec_add(v_temp##i, vsint16_2); \ |
| 938 |
- v_tempBluredAss##i = vec_sr(v_temp2##i, (vector unsigned short)vsint16_2) |
|
| 938 |
+ v_tempBlurredAss##i = vec_sr(v_temp2##i, (vector unsigned short)vsint16_2) |
|
| 939 | 939 |
|
| 940 | 940 |
OP(0); |
| 941 | 941 |
OP(1); |
| ... | ... |
@@ -957,7 +957,7 @@ static inline void RENAME(tempNoiseReducer)(uint8_t *src, int stride, |
| 957 | 957 |
const vector unsigned char perms##src##i = \ |
| 958 | 958 |
vec_lvsr(i * stride, src); \ |
| 959 | 959 |
const vector unsigned char vf##src##i = \ |
| 960 |
- vec_packsu(v_tempBluredAss##i, (vector signed short)zero); \ |
|
| 960 |
+ vec_packsu(v_tempBlurredAss##i, (vector signed short)zero); \ |
|
| 961 | 961 |
const vector unsigned char vg##src##i = \ |
| 962 | 962 |
vec_perm(vf##src##i, v_##src##A##i, permHH); \ |
| 963 | 963 |
const vector unsigned char mask##src##i = \ |
| ... | ... |
@@ -979,14 +979,14 @@ static inline void RENAME(tempNoiseReducer)(uint8_t *src, int stride, |
| 979 | 979 |
PACK_AND_STORE(src, 5); |
| 980 | 980 |
PACK_AND_STORE(src, 6); |
| 981 | 981 |
PACK_AND_STORE(src, 7); |
| 982 |
- PACK_AND_STORE(tempBlured, 0); |
|
| 983 |
- PACK_AND_STORE(tempBlured, 1); |
|
| 984 |
- PACK_AND_STORE(tempBlured, 2); |
|
| 985 |
- PACK_AND_STORE(tempBlured, 3); |
|
| 986 |
- PACK_AND_STORE(tempBlured, 4); |
|
| 987 |
- PACK_AND_STORE(tempBlured, 5); |
|
| 988 |
- PACK_AND_STORE(tempBlured, 6); |
|
| 989 |
- PACK_AND_STORE(tempBlured, 7); |
|
| 982 |
+ PACK_AND_STORE(tempBlurred, 0); |
|
| 983 |
+ PACK_AND_STORE(tempBlurred, 1); |
|
| 984 |
+ PACK_AND_STORE(tempBlurred, 2); |
|
| 985 |
+ PACK_AND_STORE(tempBlurred, 3); |
|
| 986 |
+ PACK_AND_STORE(tempBlurred, 4); |
|
| 987 |
+ PACK_AND_STORE(tempBlurred, 5); |
|
| 988 |
+ PACK_AND_STORE(tempBlurred, 6); |
|
| 989 |
+ PACK_AND_STORE(tempBlurred, 7); |
|
| 990 | 990 |
#undef PACK_AND_STORE |
| 991 | 991 |
} |
| 992 | 992 |
|
| ... | ... |
@@ -130,8 +130,8 @@ typedef struct PPContext{
|
| 130 | 130 |
DECLARE_ALIGNED(8, uint64_t, packedYScale); |
| 131 | 131 |
|
| 132 | 132 |
/** Temporal noise reducing buffers */ |
| 133 |
- uint8_t *tempBlured[3]; |
|
| 134 |
- int32_t *tempBluredPast[3]; |
|
| 133 |
+ uint8_t *tempBlurred[3]; |
|
| 134 |
+ int32_t *tempBlurredPast[3]; |
|
| 135 | 135 |
|
| 136 | 136 |
/** Temporary buffers for handling the last row(s) */ |
| 137 | 137 |
uint8_t *tempDst; |
| ... | ... |
@@ -2182,12 +2182,12 @@ static inline void RENAME(transpose2)(uint8_t *dst, int dstStride, uint8_t *src) |
| 2182 | 2182 |
|
| 2183 | 2183 |
#ifndef HAVE_ALTIVEC |
| 2184 | 2184 |
static inline void RENAME(tempNoiseReducer)(uint8_t *src, int stride, |
| 2185 |
- uint8_t *tempBlured, uint32_t *tempBluredPast, int *maxNoise) |
|
| 2185 |
+ uint8_t *tempBlurred, uint32_t *tempBlurredPast, int *maxNoise) |
|
| 2186 | 2186 |
{
|
| 2187 | 2187 |
// to save a register (FIXME do this outside of the loops) |
| 2188 |
- tempBluredPast[127]= maxNoise[0]; |
|
| 2189 |
- tempBluredPast[128]= maxNoise[1]; |
|
| 2190 |
- tempBluredPast[129]= maxNoise[2]; |
|
| 2188 |
+ tempBlurredPast[127]= maxNoise[0]; |
|
| 2189 |
+ tempBlurredPast[128]= maxNoise[1]; |
|
| 2190 |
+ tempBlurredPast[129]= maxNoise[2]; |
|
| 2191 | 2191 |
|
| 2192 | 2192 |
#define FAST_L2_DIFF |
| 2193 | 2193 |
//#define L1_DIFF //u should change the thresholds too if u try that one |
| ... | ... |
@@ -2476,7 +2476,7 @@ L2_DIFF_CORE((%0, %%REGc) , (%1, %%REGc)) |
| 2476 | 2476 |
|
| 2477 | 2477 |
"4: \n\t" |
| 2478 | 2478 |
|
| 2479 |
- :: "r" (src), "r" (tempBlured), "r"((long)stride), "m" (tempBluredPast) |
|
| 2479 |
+ :: "r" (src), "r" (tempBlurred), "r"((long)stride), "m" (tempBlurredPast) |
|
| 2480 | 2480 |
: "%"REG_a, "%"REG_d, "%"REG_c, "memory" |
| 2481 | 2481 |
); |
| 2482 | 2482 |
#else //defined (HAVE_MMX2) || defined (HAVE_3DNOW) |
| ... | ... |
@@ -2489,7 +2489,7 @@ L2_DIFF_CORE((%0, %%REGc) , (%1, %%REGc)) |
| 2489 | 2489 |
for(y=0; y<8; y++){
|
| 2490 | 2490 |
int x; |
| 2491 | 2491 |
for(x=0; x<8; x++){
|
| 2492 |
- int ref= tempBlured[ x + y*stride ]; |
|
| 2492 |
+ int ref= tempBlurred[ x + y*stride ]; |
|
| 2493 | 2493 |
int cur= src[ x + y*stride ]; |
| 2494 | 2494 |
int d1=ref - cur; |
| 2495 | 2495 |
// if(x==0 || x==7) d1+= d1>>1; |
| ... | ... |
@@ -2502,12 +2502,12 @@ L2_DIFF_CORE((%0, %%REGc) , (%1, %%REGc)) |
| 2502 | 2502 |
i=d; |
| 2503 | 2503 |
d= ( |
| 2504 | 2504 |
4*d |
| 2505 |
- +(*(tempBluredPast-256)) |
|
| 2506 |
- +(*(tempBluredPast-1))+ (*(tempBluredPast+1)) |
|
| 2507 |
- +(*(tempBluredPast+256)) |
|
| 2505 |
+ +(*(tempBlurredPast-256)) |
|
| 2506 |
+ +(*(tempBlurredPast-1))+ (*(tempBlurredPast+1)) |
|
| 2507 |
+ +(*(tempBlurredPast+256)) |
|
| 2508 | 2508 |
+4)>>3; |
| 2509 |
- *tempBluredPast=i; |
|
| 2510 |
-// ((*tempBluredPast)*3 + d + 2)>>2; |
|
| 2509 |
+ *tempBlurredPast=i; |
|
| 2510 |
+// ((*tempBlurredPast)*3 + d + 2)>>2; |
|
| 2511 | 2511 |
|
| 2512 | 2512 |
/* |
| 2513 | 2513 |
Switch between |
| ... | ... |
@@ -2521,9 +2521,9 @@ Switch between |
| 2521 | 2521 |
for(y=0; y<8; y++){
|
| 2522 | 2522 |
int x; |
| 2523 | 2523 |
for(x=0; x<8; x++){
|
| 2524 |
- int ref= tempBlured[ x + y*stride ]; |
|
| 2524 |
+ int ref= tempBlurred[ x + y*stride ]; |
|
| 2525 | 2525 |
int cur= src[ x + y*stride ]; |
| 2526 |
- tempBlured[ x + y*stride ]= |
|
| 2526 |
+ tempBlurred[ x + y*stride ]= |
|
| 2527 | 2527 |
src[ x + y*stride ]= |
| 2528 | 2528 |
(ref + cur + 1)>>1; |
| 2529 | 2529 |
} |
| ... | ... |
@@ -2532,7 +2532,7 @@ Switch between |
| 2532 | 2532 |
for(y=0; y<8; y++){
|
| 2533 | 2533 |
int x; |
| 2534 | 2534 |
for(x=0; x<8; x++){
|
| 2535 |
- tempBlured[ x + y*stride ]= src[ x + y*stride ]; |
|
| 2535 |
+ tempBlurred[ x + y*stride ]= src[ x + y*stride ]; |
|
| 2536 | 2536 |
} |
| 2537 | 2537 |
} |
| 2538 | 2538 |
} |
| ... | ... |
@@ -2541,9 +2541,9 @@ Switch between |
| 2541 | 2541 |
for(y=0; y<8; y++){
|
| 2542 | 2542 |
int x; |
| 2543 | 2543 |
for(x=0; x<8; x++){
|
| 2544 |
- int ref= tempBlured[ x + y*stride ]; |
|
| 2544 |
+ int ref= tempBlurred[ x + y*stride ]; |
|
| 2545 | 2545 |
int cur= src[ x + y*stride ]; |
| 2546 |
- tempBlured[ x + y*stride ]= |
|
| 2546 |
+ tempBlurred[ x + y*stride ]= |
|
| 2547 | 2547 |
src[ x + y*stride ]= |
| 2548 | 2548 |
(ref*7 + cur + 4)>>3; |
| 2549 | 2549 |
} |
| ... | ... |
@@ -2552,9 +2552,9 @@ Switch between |
| 2552 | 2552 |
for(y=0; y<8; y++){
|
| 2553 | 2553 |
int x; |
| 2554 | 2554 |
for(x=0; x<8; x++){
|
| 2555 |
- int ref= tempBlured[ x + y*stride ]; |
|
| 2555 |
+ int ref= tempBlurred[ x + y*stride ]; |
|
| 2556 | 2556 |
int cur= src[ x + y*stride ]; |
| 2557 |
- tempBlured[ x + y*stride ]= |
|
| 2557 |
+ tempBlurred[ x + y*stride ]= |
|
| 2558 | 2558 |
src[ x + y*stride ]= |
| 2559 | 2559 |
(ref*3 + cur + 2)>>2; |
| 2560 | 2560 |
} |
| ... | ... |
@@ -3650,8 +3650,8 @@ static void RENAME(postProcess)(const uint8_t src[], int srcStride, uint8_t dst[ |
| 3650 | 3650 |
if(mode & TEMP_NOISE_FILTER) |
| 3651 | 3651 |
{
|
| 3652 | 3652 |
RENAME(tempNoiseReducer)(dstBlock-8, stride, |
| 3653 |
- c.tempBlured[isColor] + y*dstStride + x, |
|
| 3654 |
- c.tempBluredPast[isColor] + (y>>3)*256 + (x>>3), |
|
| 3653 |
+ c.tempBlurred[isColor] + y*dstStride + x, |
|
| 3654 |
+ c.tempBlurredPast[isColor] + (y>>3)*256 + (x>>3), |
|
| 3655 | 3655 |
c.ppMode.maxTmpNoise); |
| 3656 | 3656 |
} |
| 3657 | 3657 |
} |
| ... | ... |
@@ -3672,8 +3672,8 @@ static void RENAME(postProcess)(const uint8_t src[], int srcStride, uint8_t dst[ |
| 3672 | 3672 |
|
| 3673 | 3673 |
if((mode & TEMP_NOISE_FILTER)){
|
| 3674 | 3674 |
RENAME(tempNoiseReducer)(dstBlock-8, dstStride, |
| 3675 |
- c.tempBlured[isColor] + y*dstStride + x, |
|
| 3676 |
- c.tempBluredPast[isColor] + (y>>3)*256 + (x>>3), |
|
| 3675 |
+ c.tempBlurred[isColor] + y*dstStride + x, |
|
| 3676 |
+ c.tempBlurredPast[isColor] + (y>>3)*256 + (x>>3), |
|
| 3677 | 3677 |
c.ppMode.maxTmpNoise); |
| 3678 | 3678 |
} |
| 3679 | 3679 |
|