3 |
* XVID MPEG-4 VIDEO CODEC |
* XVID MPEG-4 VIDEO CODEC |
4 |
* - Native API implementation - |
* - Native API implementation - |
5 |
* |
* |
6 |
* Copyright(C) 2001-2004 Peter Ross <pross@xvid.org> |
* Copyright(C) 2001-2011 Peter Ross <pross@xvid.org> |
7 |
* 2002-2010 Michael Militzer <isibaar@xvid.org> |
* 2002-2011 Michael Militzer <isibaar@xvid.org> |
8 |
* |
* |
9 |
* This program is free software ; you can redistribute it and/or modify |
* This program is free software ; you can redistribute it and/or modify |
10 |
* it under the terms of the GNU General Public License as published by |
* it under the terms of the GNU General Public License as published by |
20 |
* along with this program ; if not, write to the Free Software |
* along with this program ; if not, write to the Free Software |
21 |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
22 |
* |
* |
23 |
* $Id: xvid.c,v 1.84 2010-10-17 17:46:43 Isibaar Exp $ |
* $Id$ |
24 |
* |
* |
25 |
****************************************************************************/ |
****************************************************************************/ |
26 |
|
|
206 |
cpu_flags = (init->cpu_flags & XVID_CPU_FORCE) ? init->cpu_flags : detect_cpu_flags(); |
cpu_flags = (init->cpu_flags & XVID_CPU_FORCE) ? init->cpu_flags : detect_cpu_flags(); |
207 |
|
|
208 |
/* Initialize the function pointers */ |
/* Initialize the function pointers */ |
|
idct_int32_init(); |
|
209 |
init_vlc_tables(); |
init_vlc_tables(); |
210 |
|
|
211 |
/* Fixed Point Forward/Inverse DCT transformations */ |
/* Fixed Point Forward/Inverse DCT transformations */ |
338 |
sse8_16bit = sse8_16bit_c; |
sse8_16bit = sse8_16bit_c; |
339 |
sse8_8bit = sse8_8bit_c; |
sse8_8bit = sse8_8bit_c; |
340 |
|
|
341 |
|
sseh8_16bit = sseh8_16bit_c; |
342 |
|
coeff8_energy = coeff8_energy_c; |
343 |
|
blocksum8 = blocksum8_c; |
344 |
|
|
345 |
init_GMC(cpu_flags); |
init_GMC(cpu_flags); |
346 |
|
|
347 |
#if defined(ARCH_IS_IA32) || defined(ARCH_IS_X86_64) |
#if defined(ARCH_IS_IA32) || defined(ARCH_IS_X86_64) |
573 |
sad16 = sad16_sse2; |
sad16 = sad16_sse2; |
574 |
dev16 = dev16_sse2; |
dev16 = dev16_sse2; |
575 |
|
|
576 |
|
/* PSNR-HVS-M distortion metric */ |
577 |
|
sseh8_16bit = sseh8_16bit_sse2; |
578 |
|
coeff8_energy = coeff8_energy_sse2; |
579 |
|
blocksum8 = blocksum8_sse2; |
580 |
|
|
581 |
/* DCT operators */ |
/* DCT operators */ |
582 |
fdct = fdct_sse2_skal; |
fdct = fdct_sse2_skal; |
583 |
idct = idct_sse2_skal; /* Is now IEEE1180 and Walken compliant. */ |
idct = idct_sse2_skal; /* Is now IEEE1180 and Walken compliant. */ |
699 |
return XVID_ERR_VERSION; |
return XVID_ERR_VERSION; |
700 |
|
|
701 |
info->actual_version = XVID_VERSION; |
info->actual_version = XVID_VERSION; |
702 |
info->build = "xvid-1.3.0-dev"; |
info->build = "xvid-1.4.0-dev"; |
703 |
info->cpu_flags = detect_cpu_flags(); |
info->cpu_flags = detect_cpu_flags(); |
704 |
info->num_threads = 0; /* single-thread */ |
info->num_threads = 0; /* single-thread */ |
705 |
|
|