[svn] / trunk / xvidcore / src / xvid.c Repository:
ViewVC logotype

Diff of /trunk/xvidcore/src/xvid.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 36, Sat Mar 16 15:55:12 2002 UTC revision 135, Wed Apr 24 12:21:43 2002 UTC
# Line 32  Line 32 
32   *   *
33   *      History:   *      History:
34   *   *
35     *      17.03.2002      Added interpolate8x8_halfpel_hv_xmm
36   *  22.12.2001  API change: added xvid_init() - Isibaar   *  22.12.2001  API change: added xvid_init() - Isibaar
37   *      16.12.2001      inital version; (c)2001 peter ross <pross@cs.rmit.edu.au>   *      16.12.2001      inital version; (c)2001 peter ross <pross@cs.rmit.edu.au>
38   *   *
# Line 52  Line 53 
53  #include "motion/sad.h"  #include "motion/sad.h"
54  #include "utils/emms.h"  #include "utils/emms.h"
55  #include "utils/timer.h"  #include "utils/timer.h"
56    #include "bitstream/mbcoding.h"
57    
58  int xvid_init(void *handle, int opt, void *param1, void *param2)  int xvid_init(void *handle, int opt, void *param1, void *param2)
59  {  {
# Line 75  Line 77 
77    
78          // initialize the function pointers          // initialize the function pointers
79          idct_int32_init();          idct_int32_init();
80            init_vlc_tables();
81    
82          fdct = fdct_int32;          fdct = fdct_int32;
83          idct = idct_int32;          idct = idct_int32;
84    
85            sadInit = 0;
86    
87          emms = emms_c;          emms = emms_c;
88    
89          quant_intra = quant_intra_c;          quant_intra = quant_intra_c;
# Line 94  Line 99 
99          transfer_8to16copy = transfer_8to16copy_c;          transfer_8to16copy = transfer_8to16copy_c;
100          transfer_16to8copy = transfer_16to8copy_c;          transfer_16to8copy = transfer_16to8copy_c;
101          transfer_8to16sub = transfer_8to16sub_c;          transfer_8to16sub = transfer_8to16sub_c;
102            transfer_8to16sub2 = transfer_8to16sub2_c;
103          transfer_16to8add = transfer_16to8add_c;          transfer_16to8add = transfer_16to8add_c;
104          transfer8x8_copy = transfer8x8_copy_c;          transfer8x8_copy = transfer8x8_copy_c;
105    
# Line 121  Line 127 
127    
128          calc_cbp = calc_cbp_c;          calc_cbp = calc_cbp_c;
129          sad16 = sad16_c;          sad16 = sad16_c;
130            sad16bi = sad16bi_c;
131          sad8 = sad8_c;          sad8 = sad8_c;
132          dev16 = dev16_c;          dev16 = dev16_c;
133    
# Line 173  Line 180 
180                  idct = idct_xmm;                  idct = idct_xmm;
181                  interpolate8x8_halfpel_h = interpolate8x8_halfpel_h_xmm;                  interpolate8x8_halfpel_h = interpolate8x8_halfpel_h_xmm;
182                  interpolate8x8_halfpel_v = interpolate8x8_halfpel_v_xmm;                  interpolate8x8_halfpel_v = interpolate8x8_halfpel_v_xmm;
183                    interpolate8x8_halfpel_hv = interpolate8x8_halfpel_hv_xmm;
184                  yuv_to_yv12 = yuv_to_yv12_xmm;                  yuv_to_yv12 = yuv_to_yv12_xmm;
185    
186                  sad16 = sad16_xmm;                  sad16 = sad16_xmm;
# Line 184  Line 192 
192          if((cpu_flags & XVID_CPU_3DNOW) > 0) {          if((cpu_flags & XVID_CPU_3DNOW) > 0) {
193                  interpolate8x8_halfpel_h = interpolate8x8_halfpel_h_3dn;                  interpolate8x8_halfpel_h = interpolate8x8_halfpel_h_3dn;
194                  interpolate8x8_halfpel_v = interpolate8x8_halfpel_v_3dn;                  interpolate8x8_halfpel_v = interpolate8x8_halfpel_v_3dn;
195                    interpolate8x8_halfpel_hv = interpolate8x8_halfpel_hv_3dn;
196            }
197    
198            if((cpu_flags & XVID_CPU_SSE2) > 0) {
199    //              quant_intra = quant_intra_sse2;
200    //              dequant_intra = dequant_intra_sse2;
201    //              quant_inter = quant_inter_sse2;
202    //              dequant_inter = dequant_inter_sse2;
203    
204    //              calc_cbp = calc_cbp_sse2;
205    //              sad16 = sad16_sse2;
206    //              dev16 = dev16_sse2;
207          }          }
208    
209  #endif  #endif
210    #ifdef ARCH_PPC
211    #ifdef ARCH_PPC_ALTIVEC
212            calc_cbp = calc_cbp_altivec;
213            fdct = fdct_altivec;
214            idct = idct_altivec;
215            sadInit = sadInit_altivec;
216            sad16 = sad16_altivec;
217            sad8 = sad8_altivec;
218            dev16 = dev16_altivec;
219    #else
220            calc_cbp = calc_cbp_ppc;
221    #endif
222    #endif
223    
224          // API version          // API version
225          init_param->api_version = API_VERSION;          init_param->api_version = API_VERSION;

Legend:
Removed from v.36  
changed lines
  Added in v.135

No admin address has been configured
ViewVC Help
Powered by ViewVC 1.0.4