1 |
/***************************************************************************** |
/***************************************************************************** |
2 |
* |
* |
3 |
* XVID MPEG-4 VIDEO CODEC |
* XVID MPEG-4 VIDEO CODEC |
4 |
* - Mpeg4 quantization/dequantization header - |
* - MPEG4 Quantization related header - |
5 |
* |
* |
6 |
* Copyright(C) 2002 Peter Ross |
* Copyright(C) 2002-2003 Anonymous <xvid-devel@xvid.org> |
|
* |
|
|
* This program is an implementation of a part of one or more MPEG-4 |
|
|
* Video tools as specified in ISO/IEC 14496-2 standard. Those intending |
|
|
* to use this software module in hardware or software products are |
|
|
* advised that its use may infringe existing patents or copyrights, and |
|
|
* any such use would be at such party's own risk. The original |
|
|
* developer of this software module and his/her company, and subsequent |
|
|
* editors and their companies, will have no liability for use of this |
|
|
* software or modifications or derivatives thereof. |
|
7 |
* |
* |
8 |
* This program is free software ; you can redistribute it and/or modify |
* This program is free software ; you can redistribute it and/or modify |
9 |
* 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 |
28 |
|
|
29 |
#include "../portab.h" |
#include "../portab.h" |
30 |
|
|
|
/***************************************************************************** |
|
|
* Prototypes |
|
|
****************************************************************************/ |
|
|
|
|
31 |
/* intra */ |
/* intra */ |
32 |
typedef void (quant_intraFunc) (int16_t * coeff, |
typedef void (quant_intraFunc) (int16_t * coeff, |
33 |
const int16_t * data, |
const int16_t * data, |
40 |
extern quant_intraFuncPtr dequant4_intra; |
extern quant_intraFuncPtr dequant4_intra; |
41 |
|
|
42 |
quant_intraFunc quant4_intra_c; |
quant_intraFunc quant4_intra_c; |
43 |
|
|
44 |
|
#ifdef ARCH_IS_IA32 |
45 |
quant_intraFunc quant4_intra_mmx; |
quant_intraFunc quant4_intra_mmx; |
46 |
|
quant_intraFunc quant4_intra_xmm; |
47 |
|
#endif |
48 |
|
|
49 |
quant_intraFunc dequant4_intra_c; |
quant_intraFunc dequant4_intra_c; |
50 |
|
|
51 |
|
#ifdef ARCH_IS_IA32 |
52 |
quant_intraFunc dequant4_intra_mmx; |
quant_intraFunc dequant4_intra_mmx; |
53 |
|
quant_intraFunc dequant4_intra_3dne; |
54 |
|
#endif |
55 |
|
|
56 |
/* inter_quant */ |
/* inter_quant */ |
57 |
typedef uint32_t(quant_interFunc) (int16_t * coeff, |
typedef uint32_t(quant_interFunc) (int16_t * coeff, |
63 |
extern quant_interFuncPtr quant4_inter; |
extern quant_interFuncPtr quant4_inter; |
64 |
|
|
65 |
quant_interFunc quant4_inter_c; |
quant_interFunc quant4_inter_c; |
66 |
|
|
67 |
|
#ifdef ARCH_IS_IA32 |
68 |
quant_interFunc quant4_inter_mmx; |
quant_interFunc quant4_inter_mmx; |
69 |
|
quant_interFunc quant4_inter_xmm; |
70 |
|
#endif |
71 |
|
|
72 |
/* inter_dequant */ |
/* inter_dequant */ |
73 |
typedef void (dequant_interFunc) (int16_t * coeff, |
typedef void (dequant_interFunc) (int16_t * coeff, |
79 |
extern dequant_interFuncPtr dequant4_inter; |
extern dequant_interFuncPtr dequant4_inter; |
80 |
|
|
81 |
dequant_interFunc dequant4_inter_c; |
dequant_interFunc dequant4_inter_c; |
82 |
|
|
83 |
|
#ifdef ARCH_IS_IA32 |
84 |
dequant_interFunc dequant4_inter_mmx; |
dequant_interFunc dequant4_inter_mmx; |
85 |
|
dequant_interFunc dequant4_inter_3dne; |
86 |
|
#endif |
87 |
|
|
88 |
#endif /* _QUANT_MPEG4_H_ */ |
#endif /* _QUANT_MPEG4_H_ */ |