58 |
#include "../global.h" |
#include "../global.h" |
59 |
#include "reduced.h" |
#include "reduced.h" |
60 |
|
|
61 |
// function pointers |
/* function pointers */ |
62 |
COPY_UPSAMPLED_8X8_16TO8 * copy_upsampled_8x8_16to8; |
COPY_UPSAMPLED_8X8_16TO8 * copy_upsampled_8x8_16to8; |
63 |
ADD_UPSAMPLED_8X8_16TO8 * add_upsampled_8x8_16to8; |
ADD_UPSAMPLED_8X8_16TO8 * add_upsampled_8x8_16to8; |
64 |
VFILTER_31 * vfilter_31; |
VFILTER_31 * vfilter_31; |
66 |
FILTER_18X18_TO_8X8 * filter_18x18_to_8x8; |
FILTER_18X18_TO_8X8 * filter_18x18_to_8x8; |
67 |
FILTER_DIFF_18X18_TO_8X8 * filter_diff_18x18_to_8x8; |
FILTER_DIFF_18X18_TO_8X8 * filter_diff_18x18_to_8x8; |
68 |
|
|
69 |
////////////////////////////////////////////////////////// |
/*---------------------------------------------------------------------------- |
70 |
// Upsampling (1/3/3/1) filter |
* Upsampling (1/3/3/1) filter |
71 |
|
*--------------------------------------------------------------------------*/ |
72 |
|
|
73 |
#define ADD(dst,src) (dst) = CLIP((dst)+(src), 0, 255) |
#define ADD(dst,src) (dst) = CLIP((dst)+(src), 0, 255) |
74 |
|
|
164 |
} |
} |
165 |
#undef ADD |
#undef ADD |
166 |
|
|
167 |
////////////////////////////////////////////////////////// |
/*---------------------------------------------------------------------------- |
168 |
// horizontal and vertical deblocking |
* horizontal and vertical deblocking |
169 |
|
*--------------------------------------------------------------------------*/ |
170 |
|
|
171 |
void xvid_HFilter_31_C(uint8_t *Src1, uint8_t *Src2, int Nb_Blks) |
void xvid_HFilter_31_C(uint8_t *Src1, uint8_t *Src2, int Nb_Blks) |
172 |
{ |
{ |
192 |
} |
} |
193 |
} |
} |
194 |
|
|
195 |
////////////////////////////////////////////////////////// |
/*---------------------------------------------------------------------------- |
196 |
// 16x16 -> 8x8 (1/3/3/1) downsampling |
* 16x16 -> 8x8 (1/3/3/1) downsampling |
197 |
// |
* |
198 |
// Warning! These read 1 pixel outside of the input 16x16 block! |
* Warning! These read 1 pixel outside of the input 16x16 block! |
199 |
// |
*--------------------------------------------------------------------------*/ |
|
////////////////////////////////////////////////////////// |
|
200 |
|
|
201 |
void xvid_Filter_18x18_To_8x8_C(int16_t *Dst, const uint8_t *Src, const int BpS) |
void xvid_Filter_18x18_To_8x8_C(int16_t *Dst, const uint8_t *Src, const int BpS) |
202 |
{ |
{ |
241 |
T += 16; |
T += 16; |
242 |
} |
} |
243 |
} |
} |
|
|
|
|
////////////////////////////////////////////////////////// |
|