Parent Directory
|
Revision Log
Revision 1.3.2.2 - (view) (download)
1 : | Isibaar | 1.1 | #ifndef _COLORSPACE_H |
2 : | #define _COLORSPACE_H | ||
3 : | |||
4 : | #include "../portab.h" | ||
5 : | suxen_drol | 1.2 | #include "../divx4.h" |
6 : | Isibaar | 1.1 | |
7 : | /* initialize tables */ | ||
8 : | |||
9 : | void colorspace_init(void); | ||
10 : | |||
11 : | |||
12 : | |||
13 : | suxen_drol | 1.3.2.2 | /* colorspace conversion function (encoder) */ |
14 : | Isibaar | 1.1 | |
15 : | suxen_drol | 1.3.2.2 | typedef void (packedFunc) (uint8_t * x_ptr, |
16 : | int x_stride, | ||
17 : | edgomez | 1.3 | uint8_t * y_src, |
18 : | uint8_t * v_src, | ||
19 : | uint8_t * u_src, | ||
20 : | int y_stride, | ||
21 : | int uv_stride, | ||
22 : | int width, | ||
23 : | suxen_drol | 1.3.2.2 | int height, |
24 : | int vflip); | ||
25 : | |||
26 : | typedef packedFunc *packedFuncPtr; | ||
27 : | |||
28 : | edgomez | 1.3 | |
29 : | suxen_drol | 1.3.2.2 | /* xxx_to_yv12 colorspace conversion functions (encoder) */ |
30 : | |||
31 : | extern packedFuncPtr rgb555_to_yv12; | ||
32 : | extern packedFuncPtr rgb565_to_yv12; | ||
33 : | extern packedFuncPtr bgr_to_yv12; | ||
34 : | extern packedFuncPtr bgra_to_yv12; | ||
35 : | extern packedFuncPtr abgr_to_yv12; | ||
36 : | extern packedFuncPtr rgba_to_yv12; | ||
37 : | extern packedFuncPtr yuyv_to_yv12; | ||
38 : | extern packedFuncPtr uyvy_to_yv12; | ||
39 : | |||
40 : | extern packedFuncPtr rgb555i_to_yv12; | ||
41 : | extern packedFuncPtr rgb565i_to_yv12; | ||
42 : | extern packedFuncPtr bgri_to_yv12; | ||
43 : | extern packedFuncPtr bgrai_to_yv12; | ||
44 : | extern packedFuncPtr abgri_to_yv12; | ||
45 : | extern packedFuncPtr rgbai_to_yv12; | ||
46 : | extern packedFuncPtr yuyvi_to_yv12; | ||
47 : | extern packedFuncPtr uyvyi_to_yv12; | ||
48 : | Isibaar | 1.1 | |
49 : | |||
50 : | /* plain c */ | ||
51 : | suxen_drol | 1.3.2.2 | packedFunc rgb555_to_yv12_c; |
52 : | packedFunc rgb565_to_yv12_c; | ||
53 : | packedFunc bgr_to_yv12_c; | ||
54 : | packedFunc bgra_to_yv12_c; | ||
55 : | packedFunc abgr_to_yv12_c; | ||
56 : | packedFunc rgba_to_yv12_c; | ||
57 : | packedFunc yuyv_to_yv12_c; | ||
58 : | packedFunc uyvy_to_yv12_c; | ||
59 : | |||
60 : | packedFunc rgb555i_to_yv12_c; | ||
61 : | packedFunc rgb565i_to_yv12_c; | ||
62 : | packedFunc bgri_to_yv12_c; | ||
63 : | packedFunc bgrai_to_yv12_c; | ||
64 : | packedFunc abgri_to_yv12_c; | ||
65 : | packedFunc rgbai_to_yv12_c; | ||
66 : | packedFunc yuyvi_to_yv12_c; | ||
67 : | packedFunc uyvyi_to_yv12_c; | ||
68 : | Isibaar | 1.1 | |
69 : | |||
70 : | /* mmx */ | ||
71 : | suxen_drol | 1.3.2.2 | packedFunc bgr_to_yv12_mmx; |
72 : | packedFunc bgra_to_yv12_mmx; | ||
73 : | packedFunc yuyv_to_yv12_mmx; | ||
74 : | packedFunc uyvy_to_yv12_mmx; | ||
75 : | |||
76 : | /* 3dnow */ | ||
77 : | packedFunc yuyv_to_yv12_3dn; | ||
78 : | packedFunc uyvy_to_yv12_3dn; | ||
79 : | |||
80 : | /* xmm */ | ||
81 : | packedFunc yuyv_to_yv12_xmm; | ||
82 : | packedFunc uyvy_to_yv12_xmm; | ||
83 : | |||
84 : | |||
85 : | /* yv12_to_xxx colorspace conversion functions (decoder) */ | ||
86 : | suxen_drol | 1.2 | |
87 : | suxen_drol | 1.3.2.2 | extern packedFuncPtr yv12_to_rgb555; |
88 : | extern packedFuncPtr yv12_to_rgb565; | ||
89 : | extern packedFuncPtr yv12_to_bgr; | ||
90 : | extern packedFuncPtr yv12_to_bgra; | ||
91 : | extern packedFuncPtr yv12_to_abgr; | ||
92 : | extern packedFuncPtr yv12_to_rgba; | ||
93 : | extern packedFuncPtr yv12_to_yuyv; | ||
94 : | extern packedFuncPtr yv12_to_uyvy; | ||
95 : | |||
96 : | extern packedFuncPtr yv12_to_rgb555i; | ||
97 : | extern packedFuncPtr yv12_to_rgb565i; | ||
98 : | extern packedFuncPtr yv12_to_bgri; | ||
99 : | extern packedFuncPtr yv12_to_bgrai; | ||
100 : | extern packedFuncPtr yv12_to_abgri; | ||
101 : | extern packedFuncPtr yv12_to_rgbai; | ||
102 : | extern packedFuncPtr yv12_to_yuyvi; | ||
103 : | extern packedFuncPtr yv12_to_uyvyi; | ||
104 : | |||
105 : | /* plain c */ | ||
106 : | packedFunc yv12_to_rgb555_c; | ||
107 : | packedFunc yv12_to_rgb565_c; | ||
108 : | packedFunc yv12_to_bgr_c; | ||
109 : | packedFunc yv12_to_bgra_c; | ||
110 : | packedFunc yv12_to_abgr_c; | ||
111 : | packedFunc yv12_to_rgba_c; | ||
112 : | packedFunc yv12_to_yuyv_c; | ||
113 : | packedFunc yv12_to_uyvy_c; | ||
114 : | |||
115 : | packedFunc yv12_to_rgb555i_c; | ||
116 : | packedFunc yv12_to_rgb565i_c; | ||
117 : | packedFunc yv12_to_bgri_c; | ||
118 : | packedFunc yv12_to_bgrai_c; | ||
119 : | packedFunc yv12_to_abgri_c; | ||
120 : | packedFunc yv12_to_rgbai_c; | ||
121 : | packedFunc yv12_to_yuyvi_c; | ||
122 : | packedFunc yv12_to_uyvyi_c; | ||
123 : | |||
124 : | /* mmx */ | ||
125 : | packedFunc yv12_to_bgr_mmx; | ||
126 : | packedFunc yv12_to_bgra_mmx; | ||
127 : | packedFunc yv12_to_yuyv_mmx; | ||
128 : | packedFunc yv12_to_uyvy_mmx; | ||
129 : | |||
130 : | packedFunc yv12_to_yuyvi_mmx; | ||
131 : | packedFunc yv12_to_uyvyi_mmx; | ||
132 : | |||
133 : | |||
134 : | typedef void (planarFunc) ( | ||
135 : | uint8_t * y_dst, uint8_t * u_dst, uint8_t * v_dst, | ||
136 : | int y_dst_stride, int uv_dst_stride, | ||
137 : | uint8_t * y_src, uint8_t * u_src, uint8_t * v_src, | ||
138 : | int y_src_stride, int uv_src_stride, | ||
139 : | int width, int height, int vflip); | ||
140 : | typedef planarFunc *planarFuncPtr; | ||
141 : | |||
142 : | extern planarFuncPtr yv12_to_yv12; | ||
143 : | |||
144 : | planarFunc yv12_to_yv12_c; | ||
145 : | planarFunc yv12_to_yv12_mmx; | ||
146 : | planarFunc yv12_to_yv12_xmm; | ||
147 : | suxen_drol | 1.2 | |
148 : | Isibaar | 1.1 | |
149 : | edgomez | 1.3 | #endif /* _COLORSPACE_H_ */ |
No admin address has been configured | ViewVC Help |
Powered by ViewVC 1.0.4 |