--- xvid.c 2002/07/07 13:21:34 1.25 +++ xvid.c 2002/07/09 01:44:44 1.28 @@ -27,7 +27,6 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * ****************************************************************************/ - /***************************************************************************** * * History @@ -37,7 +36,7 @@ * - 22.12.2001 API change: added xvid_init() - Isibaar * - 16.12.2001 inital version; (c)2001 peter ross * - * $Id: xvid.c,v 1.25 2002/07/07 13:21:34 Isibaar Exp $ + * $Id: xvid.c,v 1.28 2002/07/09 01:44:44 chenm001 Exp $ * ****************************************************************************/ @@ -88,9 +87,11 @@ /* Inform the client the core build - unused because we're still alpha */ init_param->core_build = 1000; + printf("init_param->cpu_flags %x\n",init_param->cpu_flags);//NIC + if ((init_param->cpu_flags & XVID_CPU_CHKONLY)) { - init_param->cpu_flags = check_cpu_features(); + //init_param->cpu_flags = check_cpu_features();//nic return XVID_ERR_OK; } @@ -99,7 +100,7 @@ cpu_flags = init_param->cpu_flags; } else { - cpu_flags = check_cpu_features(); + //cpu_flags = check_cpu_features();//nic init_param->cpu_flags = cpu_flags; } @@ -235,10 +236,6 @@ interpolate8x8_halfpel_v = interpolate8x8_halfpel_v_xmm; interpolate8x8_halfpel_hv = interpolate8x8_halfpel_hv_xmm; - /* Quantization */ - dequant_intra = dequant_intra_xmm; - dequant_inter = dequant_inter_xmm; - /* Buffer transfer */ transfer_8to16sub2 = transfer_8to16sub2_xmm; @@ -247,7 +244,6 @@ /* ME functions */ sad16 = sad16_xmm; - sad16bi = sad16bi_xmm; sad8 = sad8_xmm; dev16 = dev16_xmm; @@ -264,8 +260,6 @@ if ((cpu_flags & XVID_CPU_SSE2) > 0) { #ifdef EXPERIMENTAL_SSE2_CODE - calc_cbp = calc_cbp_sse2; - /* Quantization */ quant_intra = quant_intra_sse2; dequant_intra = dequant_intra_sse2; @@ -273,6 +267,7 @@ dequant_inter = dequant_inter_sse2; /* ME */ + calc_cbp = calc_cbp_sse2; sad16 = sad16_sse2; dev16 = dev16_sse2; @@ -348,7 +343,14 @@ return decoder_decode((DECODER *) handle, (XVID_DEC_FRAME *) param1); case XVID_DEC_CREATE: - return decoder_create((XVID_DEC_PARAM *) param1); + /* *************************************************************************** + NIC uso il secondo parametro 'param2' ma in realta` non so bene per cosa e` + stato pensato ..... e quindi in futuro potrebbe essere un problema + *************************************************************************** */ + if(param2!=NULL) + return IM1_decoder_create((XVID_DEC_PARAM *) param1,(XVID_DEC_FRAME *) param2); + else + return decoder_create((XVID_DEC_PARAM *) param1); //NIC commentata case XVID_DEC_DESTROY: return decoder_destroy((DECODER *) handle);