--- xvid.c 2003/11/02 23:02:52 1.45.2.19 +++ xvid.c 2003/12/13 00:04:09 1.45.2.24 @@ -19,7 +19,7 @@ * along with this program ; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: xvid.c,v 1.45.2.19 2003/11/02 23:02:52 edgomez Exp $ + * $Id: xvid.c,v 1.45.2.24 2003/12/13 00:04:09 edgomez Exp $ * ****************************************************************************/ @@ -46,6 +46,7 @@ #include "utils/timer.h" #include "bitstream/mbcoding.h" #include "image/qpel.h" +#include "image/postprocessing.h" #if defined(_DEBUG) unsigned int xvid_debug = 0; /* xvid debug mask */ @@ -170,6 +171,7 @@ /* Initialize the function pointers */ idct_int32_init(); init_vlc_tables(); + init_postproc(); /* Fixed Point Forward/Inverse DCT transformations */ fdct = fdct_int32; @@ -280,15 +282,14 @@ yv12_to_uyvyi = yv12_to_uyvyi_c; /* Functions used in motion estimation algorithms */ - calc_cbp = calc_cbp_c; - sad16 = sad16_c; - sad8 = sad8_c; - sad16bi = sad16bi_c; - sad8bi = sad8bi_c; - dev16 = dev16_c; - sad16v = sad16v_c; - -/* Halfpel8_Refine = Halfpel8_Refine_c; */ + calc_cbp = calc_cbp_c; + sad16 = sad16_c; + sad8 = sad8_c; + sad16bi = sad16bi_c; + sad8bi = sad8bi_c; + dev16 = dev16_c; + sad16v = sad16v_c; + sse8_16bit = sse8_16bit_c; #if defined(ARCH_IS_IA32) @@ -380,6 +381,7 @@ sad8bi = sad8bi_mmx; dev16 = dev16_mmx; sad16v = sad16v_mmx; + sse8_16bit = sse8_16bit_mmx; } /* these 3dnow functions are faster than mmx, but slower than xmm. */ @@ -479,8 +481,6 @@ interpolate8x8_halfpel_hv = interpolate8x8_halfpel_hv_3dne; } -#if defined(EXPERIMENTAL_SSE2_CODE) /* mark the whole SSE2 stuff as experimental. At least on - my P4, it crashes... */ if ((cpu_flags & XVID_CPU_SSE2)) { calc_cbp = calc_cbp_sse2; @@ -495,12 +495,11 @@ sad16 = sad16_sse2; dev16 = dev16_sse2; - /* DCT operators */ + /* DCT operators + * no iDCT because it's not "Walken matching" */ fdct = fdct_sse2_skal; - idct = idct_sse2_dmitry; } -#endif -#endif +#endif /* ARCH_IS_IA32 */ #if defined(ARCH_IS_IA64) if ((cpu_flags & XVID_CPU_ASM)) { /* use assembler routines? */ @@ -561,7 +560,7 @@ return XVID_ERR_VERSION; info->actual_version = XVID_VERSION; - info->build = "dev-api-4"; + info->build = "xvid-1.0.0"; info->cpu_flags = detect_cpu_flags(); #if defined(_SMP) && defined(WIN32)