--- xvid.c 2004/04/12 14:05:08 1.51 +++ xvid.c 2004/08/10 21:58:55 1.55 @@ -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.51 2004/04/12 14:05:08 edgomez Exp $ + * $Id: xvid.c,v 1.55 2004/08/10 21:58:55 edgomez Exp $ * ****************************************************************************/ @@ -222,6 +222,11 @@ interpolate8x8_halfpel_v = interpolate8x8_halfpel_v_c; interpolate8x8_halfpel_hv = interpolate8x8_halfpel_hv_c; + interpolate8x8_halfpel_add = interpolate8x8_halfpel_add_c; + interpolate8x8_halfpel_h_add = interpolate8x8_halfpel_h_add_c; + interpolate8x8_halfpel_v_add = interpolate8x8_halfpel_v_add_c; + interpolate8x8_halfpel_hv_add = interpolate8x8_halfpel_hv_add_c; + interpolate16x16_lowpass_h = interpolate16x16_lowpass_h_c; interpolate16x16_lowpass_v = interpolate16x16_lowpass_v_c; interpolate16x16_lowpass_hv = interpolate16x16_lowpass_hv_c; @@ -302,6 +307,7 @@ dev16 = dev16_c; sad16v = sad16v_c; sse8_16bit = sse8_16bit_c; + sse8_8bit = sse8_8bit_c; #if defined(ARCH_IS_IA32) @@ -356,6 +362,11 @@ interpolate8x8_halfpel_v = interpolate8x8_halfpel_v_mmx; interpolate8x8_halfpel_hv = interpolate8x8_halfpel_hv_mmx; + interpolate8x8_halfpel_add = interpolate8x8_halfpel_add_mmx; + interpolate8x8_halfpel_h_add = interpolate8x8_halfpel_h_add_mmx; + interpolate8x8_halfpel_v_add = interpolate8x8_halfpel_v_add_mmx; + interpolate8x8_halfpel_hv_add = interpolate8x8_halfpel_hv_add_mmx; + interpolate8x8_6tap_lowpass_h = interpolate8x8_6tap_lowpass_h_mmx; interpolate8x8_6tap_lowpass_v = interpolate8x8_6tap_lowpass_v_mmx; @@ -389,14 +400,15 @@ yv12_to_uyvyi = yv12_to_uyvyi_mmx; /* Motion estimation related functions */ - calc_cbp = calc_cbp_mmx; - sad16 = sad16_mmx; - sad8 = sad8_mmx; - sad16bi = sad16bi_mmx; - sad8bi = sad8bi_mmx; - dev16 = dev16_mmx; - sad16v = sad16v_mmx; + calc_cbp = calc_cbp_mmx; + sad16 = sad16_mmx; + sad8 = sad8_mmx; + sad16bi = sad16bi_mmx; + sad8bi = sad8bi_mmx; + dev16 = dev16_mmx; + sad16v = sad16v_mmx; sse8_16bit = sse8_16bit_mmx; + sse8_8bit = sse8_8bit_mmx; } /* these 3dnow functions are faster than mmx, but slower than xmm. */ @@ -423,6 +435,11 @@ interpolate8x8_halfpel_h = interpolate8x8_halfpel_h_xmm; interpolate8x8_halfpel_v = interpolate8x8_halfpel_v_xmm; interpolate8x8_halfpel_hv = interpolate8x8_halfpel_hv_xmm; + + interpolate8x8_halfpel_add = interpolate8x8_halfpel_add_xmm; + interpolate8x8_halfpel_h_add = interpolate8x8_halfpel_h_add_xmm; + interpolate8x8_halfpel_v_add = interpolate8x8_halfpel_v_add_xmm; + interpolate8x8_halfpel_hv_add = interpolate8x8_halfpel_hv_add_xmm; /* reduced resolution */ copy_upsampled_8x8_16to8 = xvid_Copy_Upsampled_8x8_16To8_xmm; @@ -518,6 +535,9 @@ /* DCT operators * no iDCT because it's not "Walken matching" */ fdct = fdct_sse2_skal; + + /* postprocessing */ + image_brightness = image_brightness_sse2; } #endif /* ARCH_IS_IA32 */ @@ -614,7 +634,7 @@ return XVID_ERR_VERSION; info->actual_version = XVID_VERSION; - info->build = "xvid-1.0.0"; + info->build = "xvid-1.1-cvshead"; info->cpu_flags = detect_cpu_flags(); #if defined(_SMP) && defined(WIN32)