xine-lib  1.2.10
speedy.h
Go to the documentation of this file.
1 
19 #ifndef SPEEDY_H_INCLUDED
20 #define SPEEDY_H_INCLUDED
21 
22 #if HAVE_INTTYPES_H
23 #include <inttypes.h>
24 #else
25 #include <stdint.h>
26 #endif
27 
28 #ifdef __cplusplus
29 extern "C" {
30 #endif
31 
48 typedef struct pulldown_metrics_s {
49  /* difference: total, even lines, odd lines */
50  int d, e, o;
51  /* noise: temporal, spacial (current), spacial (past) */
52  int t, s, p;
54 
58 extern void (*interpolate_packed422_scanline)( uint8_t *output, uint8_t *top,
59  uint8_t *bot, int width );
60 
64 extern void (*blit_colour_packed422_scanline)( uint8_t *output,
65  int width, int y, int cb, int cr );
66 
71 extern void (*blit_colour_packed4444_scanline)( uint8_t *output,
72  int width, int alpha, int luma,
73  int cb, int cr );
74 
78 extern void (*blit_packed422_scanline)( uint8_t *dest, const uint8_t *src, int width );
79 
84 extern void (*composite_packed4444_to_packed422_scanline)( uint8_t *output,
85  uint8_t *input,
86  uint8_t *foreground,
87  int width );
88 
95 extern void (*composite_packed4444_alpha_to_packed422_scanline)( uint8_t *output,
96  uint8_t *input,
97  uint8_t *foreground,
98  int width, int alpha );
99 
104 extern void (*composite_alphamask_to_packed4444_scanline)( uint8_t *output,
105  uint8_t *input,
106  uint8_t *mask, int width,
107  int textluma, int textcb,
108  int textcr );
109 
115 extern void (*composite_alphamask_alpha_to_packed4444_scanline)( uint8_t *output,
116  uint8_t *input,
117  uint8_t *mask, int width,
118  int textluma, int textcb,
119  int textcr, int alpha );
120 
124 extern void (*composite_bars_packed4444_scanline)( uint8_t *output,
125  uint8_t *background, int width,
126  int a, int luma, int cb, int cr,
127  int percentage );
128 
129 
134 extern void (*premultiply_packed4444_scanline)( uint8_t *output, uint8_t *input, int width );
135 
142 extern void (*blend_packed422_scanline)( uint8_t *output, uint8_t *src1,
143  uint8_t *src2, int width, int pos );
144 
150 extern unsigned int (*diff_factor_packed422_scanline)( uint8_t *cur, uint8_t *old, int width );
151 
157 extern unsigned int (*comb_factor_packed422_scanline)( uint8_t *top, uint8_t *mid,
158  uint8_t *bot, int width );
159 
163 extern void (*vfilter_chroma_121_packed422_scanline)( uint8_t *output, int width,
164  uint8_t *m, uint8_t *t, uint8_t *b );
165 
169 extern void (*vfilter_chroma_332_packed422_scanline)( uint8_t *output, int width,
170  uint8_t *m, uint8_t *t, uint8_t *b );
171 
175 extern void (*filter_luma_121_packed422_inplace_scanline)( uint8_t *data, int width );
176 
180 extern void (*filter_luma_14641_packed422_inplace_scanline)( uint8_t *data, int width );
181 
185 extern void (*kill_chroma_packed422_inplace_scanline)( uint8_t *data, int width );
186 
190 extern void (*mirror_packed422_inplace_scanline)( uint8_t *data, int width );
191 
195 extern void (*halfmirror_packed422_inplace_scanline)( uint8_t *data, int width );
196 
200 extern void (*invert_colour_packed422_inplace_scanline)( uint8_t *data, int width );
201 
206 extern void *(*speedy_memcpy)( void *output, const void *input, size_t size );
207 
212 extern void (*diff_packed422_block8x8)( pulldown_metrics_t *m, uint8_t *old,
213  uint8_t *new, int os, int ns );
214 
219 extern void (*a8_subpix_blit_scanline)( uint8_t *output, uint8_t *input,
220  int lasta, int startpos, int width );
221 
226 extern void (*quarter_blit_vertical_packed422_scanline)( uint8_t *output, uint8_t *one,
227  uint8_t *three, int width );
228 
233 extern void (*subpix_blit_vertical_packed422_scanline)( uint8_t *output, uint8_t *top,
234  uint8_t *bot, int subpixpos, int width );
235 
240 extern void (*packed444_to_nonpremultiplied_packed4444_scanline)( uint8_t *output,
241  uint8_t *input,
242  int width, int alpha );
243 
250 #if 0
251 extern void (*aspect_adjust_packed4444_scanline)( uint8_t *output,
252  uint8_t *input,
253  int width,
254  double pixel_aspect );
255 #endif
256 
260 extern void (*packed444_to_packed422_scanline)( uint8_t *output,
261  uint8_t *input,
262  int width );
263 
268 extern void (*packed422_to_packed444_scanline)( uint8_t *output,
269  uint8_t *input,
270  int width );
271 
278 extern void (*packed422_to_packed444_rec601_scanline)( uint8_t *dest,
279  uint8_t *src,
280  int width );
281 
287 extern void (*packed444_to_rgb24_rec601_scanline)( uint8_t *output,
288  uint8_t *input,
289  int width );
290 extern void (*rgb24_to_packed444_rec601_scanline)( uint8_t *output,
291  uint8_t *input,
292  int width );
293 extern void (*rgba32_to_packed4444_rec601_scanline)( uint8_t *output,
294  uint8_t *input,
295  int width );
296 
302 extern void (*chroma_422_to_444_mpeg2_plane)( uint8_t *dst, uint8_t *src,
303  int width, int height );
304 
310 extern void (*chroma_420_to_422_mpeg2_plane)( uint8_t *dst, uint8_t *src,
311  int width, int height, int progressive );
312 
317 void setup_speedy_calls( uint32_t accel, int verbose );
318 
323 uint32_t speedy_get_accel( void );
324 
325 #ifdef __cplusplus
326 };
327 #endif
328 #endif /* SPEEDY_H_INCLUDED */
speedy_accel
static uint32_t speedy_accel
Definition: speedy.c:2584
movd_r2m
#define movd_r2m(reg, var)
Definition: mmx.h:427
composite_alphamask_alpha_to_packed4444_scanline_c
static void composite_alphamask_alpha_to_packed4444_scanline_c(uint8_t *output, uint8_t *input, uint8_t *mask, int width, int textluma, int textcb, int textcr, int alpha)
Definition: speedy.c:1854
pand_m2r
#define pand_m2r(var, reg)
Definition: mmx.h:554
punpcklbw_r2r
#define punpcklbw_r2r(regs, regd)
Definition: mmx.h:695
speedy_memcpy_mmx
#define speedy_memcpy_mmx
Definition: speedy.c:1398
kill_chroma_packed422_inplace_scanline
void(* kill_chroma_packed422_inplace_scanline)(uint8_t *data, int width)
Definition: speedy.c:104
blit_packed422_scanline
void(* blit_packed422_scanline)(uint8_t *dest, const uint8_t *src, int width)
Definition: speedy.c:79
pulldown_metrics_s::p
int p
Definition: speedy.h:52
Cb_B
static int Cb_B[256]
Definition: speedy.c:2136
paddw_m2r
#define paddw_m2r(var, reg)
Definition: mmx.h:442
mirror_packed422_inplace_scanline_c
static void mirror_packed422_inplace_scanline_c(uint8_t *data, int width)
Definition: speedy.c:1026
xineutils.h
blit_colour_packed4444_scanline
void(* blit_colour_packed4444_scanline)(uint8_t *output, int width, int alpha, int luma, int cb, int cr)
Definition: speedy.c:76
blend_packed422_scanline
void(* blend_packed422_scanline)(uint8_t *output, uint8_t *src1, uint8_t *src2, int width, int pos)
Definition: speedy.c:97
chroma_420_to_422_mpeg2_plane
void(* chroma_420_to_422_mpeg2_plane)(uint8_t *dst, uint8_t *src, int width, int height, int progressive)
Definition: speedy.c:149
pmaddwd_r2r
#define pmaddwd_r2r(regs, regd)
Definition: mmx.h:529
composite_packed4444_alpha_to_packed422_scanline
void(* composite_packed4444_alpha_to_packed422_scanline)(uint8_t *output, uint8_t *input, uint8_t *foreground, int width, int alpha)
Definition: speedy.c:82
blit_packed422_scanline_c
static void blit_packed422_scanline_c(uint8_t *dest, const uint8_t *src, int width)
Definition: speedy.c:1402
psrld_r2r
#define psrld_r2r(regs, regd)
Definition: mmx.h:640
speedy_get_accel
uint32_t speedy_get_accel(void)
Definition: speedy.c:2684
paddw_r2r
#define paddw_r2r(regs, regd)
Definition: mmx.h:443
setup_speedy_calls
void setup_speedy_calls(uint32_t accel, int verbose)
Definition: speedy.c:2586
quarter_blit_vertical_packed422_scanline_c
static void quarter_blit_vertical_packed422_scanline_c(uint8_t *output, uint8_t *one, uint8_t *three, int width)
Definition: speedy.c:2062
kill_chroma_packed422_inplace_scanline_c
static void kill_chroma_packed422_inplace_scanline_c(uint8_t *data, int width)
Definition: speedy.c:962
MM_ACCEL_X86_MMX
#define MM_ACCEL_X86_MMX
Definition: xineutils.h:164
filter_luma_14641_packed422_inplace_scanline
void(* filter_luma_14641_packed422_inplace_scanline)(uint8_t *data, int width)
Definition: speedy.c:100
diff_factor_packed422_scanline_c
static unsigned int diff_factor_packed422_scanline_c(uint8_t *cur, uint8_t *old, int width)
Definition: speedy.c:267
psrlw_i2r
#define psrlw_i2r(imm, reg)
Definition: mmx.h:643
halfmirror_packed422_inplace_scanline
void(* halfmirror_packed422_inplace_scanline)(uint8_t *data, int width)
Definition: speedy.c:106
composite_packed4444_to_packed422_scanline
void(* composite_packed4444_to_packed422_scanline)(uint8_t *output, uint8_t *input, uint8_t *foreground, int width)
Definition: speedy.c:80
xine_mmx.h
rgba32_to_packed4444_rec601_scanline
void(* rgba32_to_packed4444_rec601_scanline)(uint8_t *output, uint8_t *input, int width)
Definition: speedy.c:144
paddd_r2r
#define paddd_r2r(regs, regd)
Definition: mmx.h:439
diff_packed422_block8x8
void(* diff_packed422_block8x8)(pulldown_metrics_t *m, uint8_t *old, uint8_t *new, int os, int ns)
Definition: speedy.c:108
composite_alphamask_to_packed4444_scanline
void(* composite_alphamask_to_packed4444_scanline)(uint8_t *output, uint8_t *input, uint8_t *mask, int width, int textluma, int textcb, int textcr)
Definition: speedy.c:86
composite_bars_packed4444_scanline
void(* composite_bars_packed4444_scanline)(uint8_t *output, uint8_t *background, int width, int a, int luma, int cb, int cr, int percentage)
Definition: speedy.c:116
subpix_blit_vertical_packed422_scanline
void(* subpix_blit_vertical_packed422_scanline)(uint8_t *output, uint8_t *top, uint8_t *bot, int subpixpos, int width)
Definition: speedy.c:114
Cr_B
static int Cr_B[256]
Definition: speedy.c:2139
always_inline
#define always_inline
Definition: bswap.h:28
BitShift
static unsigned long BitShift
Definition: speedy.c:265
psubusb_r2r
#define psubusb_r2r(regs, regd)
Definition: mmx.h:506
psubusw_r2r
#define psubusw_r2r(regs, regd)
Definition: mmx.h:502
vfilter_chroma_332_packed422_scanline
void(* vfilter_chroma_332_packed422_scanline)(uint8_t *output, int width, uint8_t *m, uint8_t *t, uint8_t *b)
Definition: speedy.c:154
kill_chroma_packed422_inplace_scanline
void(* kill_chroma_packed422_inplace_scanline)(uint8_t *data, int width)
Definition: speedy.c:104
pulldown_metrics_s::o
int o
Definition: speedy.h:50
pavgb_r2r
#define pavgb_r2r(regs, regd)
Definition: mmx.h:226
composite_packed4444_to_packed422_scanline_c
static void composite_packed4444_to_packed422_scanline_c(uint8_t *output, uint8_t *input, uint8_t *foreground, int width)
Definition: speedy.c:1581
sfence
#define sfence()
Definition: mmx.h:263
speedtools.h
premultiply_packed4444_scanline
void(* premultiply_packed4444_scanline)(uint8_t *output, uint8_t *input, int width)
Definition: speedy.c:96
pulldown_metrics_s::t
int t
Definition: speedy.h:52
mmx_t::uw
unsigned short uw[4]
Definition: mmx.h:59
diff_factor_packed422_scanline
unsigned int(* diff_factor_packed422_scanline)(uint8_t *cur, uint8_t *old, int width)
Definition: speedy.c:101
packed422_to_packed444_rec601_scanline
void(* packed422_to_packed444_rec601_scanline)(uint8_t *dest, uint8_t *src, int width)
Definition: speedy.c:135
pulldown_metrics_s::e
int e
Definition: speedy.h:50
comb_factor_packed422_scanline
unsigned int(* comb_factor_packed422_scanline)(uint8_t *top, uint8_t *mid, uint8_t *bot, int width)
Definition: speedy.c:102
rgb24_to_packed444_rec601_scanline
void(* rgb24_to_packed444_rec601_scanline)(uint8_t *output, uint8_t *input, int width)
Definition: speedy.c:141
filter_luma_14641_packed422_inplace_scanline_c
static void filter_luma_14641_packed422_inplace_scanline_c(uint8_t *data, int width)
Definition: speedy.c:1067
chroma_420_to_422_mpeg2_plane
void(* chroma_420_to_422_mpeg2_plane)(uint8_t *dst, uint8_t *src, int width, int height, int progressive)
Definition: speedy.c:149
psrlq_i2r
#define psrlq_i2r(imm, reg)
Definition: mmx.h:633
__attribute__
static __attribute__((always_inline, const))
Definition: speedy.c:164
chroma_420_to_422_mpeg2_plane_c
static void chroma_420_to_422_mpeg2_plane_c(uint8_t *dst, uint8_t *src, int width, int height, int progressive)
Definition: speedy.c:2481
halfmirror_packed422_inplace_scanline_c
static void halfmirror_packed422_inplace_scanline_c(uint8_t *data, int width)
Definition: speedy.c:1041
composite_alphamask_alpha_to_packed4444_scanline
void(* composite_alphamask_alpha_to_packed4444_scanline)(uint8_t *output, uint8_t *input, uint8_t *mask, int width, int textluma, int textcb, int textcr, int alpha)
Definition: speedy.c:91
mmx_t::w
short w[4]
Definition: mmx.h:58
attributes.h
filter_luma_121_packed422_inplace_scanline
void(* filter_luma_121_packed422_inplace_scanline)(uint8_t *data, int width)
Definition: speedy.c:99
packed444_to_rgb24_rec601_scanline_c
static void packed444_to_rgb24_rec601_scanline_c(uint8_t *output, uint8_t *input, int width)
Definition: speedy.c:2277
packed444_to_nonpremultiplied_packed4444_scanline_c
static void packed444_to_nonpremultiplied_packed4444_scanline_c(uint8_t *output, uint8_t *input, int width, int alpha)
Definition: speedy.c:2340
packed444_to_packed422_scanline
void(* packed444_to_packed422_scanline)(uint8_t *output, uint8_t *input, int width)
Definition: speedy.c:129
conv_RY_inited
static int conv_RY_inited
Definition: speedy.c:2140
setup_speedy_calls
void setup_speedy_calls(uint32_t accel, int verbose)
Definition: speedy.c:2586
init_YCbCr_to_RGB_tables
static void init_YCbCr_to_RGB_tables(void)
Definition: speedy.c:2189
por_r2r
#define por_r2r(regs, regd)
Definition: mmx.h:570
chroma_422_to_444_mpeg2_plane
void(* chroma_422_to_444_mpeg2_plane)(uint8_t *dst, uint8_t *src, int width, int height)
Definition: speedy.c:147
pulldown_metrics_t
struct pulldown_metrics_s pulldown_metrics_t
pxor_r2r
#define pxor_r2r(regs, regd)
Definition: mmx.h:577
movq_m2r
#define movq_m2r(var, reg)
Definition: mmx.h:411
psllq_i2r
#define psllq_i2r(imm, reg)
Definition: mmx.h:615
filter_luma_14641_packed422_inplace_scanline
void(* filter_luma_14641_packed422_inplace_scanline)(uint8_t *data, int width)
Definition: speedy.c:100
packed422_to_packed444_scanline
void(* packed422_to_packed444_scanline)(uint8_t *output, uint8_t *input, int width)
Definition: speedy.c:132
diff_packed422_block8x8_c
static void diff_packed422_block8x8_c(pulldown_metrics_t *m, uint8_t *old, uint8_t *new, int os, int ns)
Definition: speedy.c:578
interpolate_packed422_scanline_c
static void interpolate_packed422_scanline_c(uint8_t *output, uint8_t *top, uint8_t *bot, int width)
Definition: speedy.c:1087
Cb_G
static int Cb_G[256]
Definition: speedy.c:2135
composite_packed4444_to_packed422_scanline
void(* composite_packed4444_to_packed422_scanline)(uint8_t *output, uint8_t *input, uint8_t *foreground, int width)
Definition: speedy.c:80
packed444_to_rgb24_rec601_scanline
void(* packed444_to_rgb24_rec601_scanline)(uint8_t *output, uint8_t *input, int width)
Definition: speedy.c:138
Cr_R
static int Cr_R[256]
Definition: speedy.c:2137
packed444_to_packed422_scanline_c
static void packed444_to_packed422_scanline_c(uint8_t *output, uint8_t *input, int width)
Definition: speedy.c:607
pulldown_metrics_s::s
int s
Definition: speedy.h:52
composite_bars_packed4444_scanline_c
static void composite_bars_packed4444_scanline_c(uint8_t *output, uint8_t *background, int width, int a, int luma, int cb, int cr, int percentage)
Definition: speedy.c:2407
pshufw_r2r
#define pshufw_r2r(regs, regd, imm)
Definition: mmx.h:261
composite_bars_packed4444_scanline
void(* composite_bars_packed4444_scanline)(uint8_t *output, uint8_t *background, int width, int a, int luma, int cb, int cr, int percentage)
Definition: speedy.c:116
blit_packed422_scanline
void(* blit_packed422_scanline)(uint8_t *dest, const uint8_t *src, int width)
Definition: speedy.c:79
interpolate_packed422_scanline
void(* interpolate_packed422_scanline)(uint8_t *output, uint8_t *top, uint8_t *bot, int width)
Definition: speedy.c:72
Y_G
static int Y_G[256]
Definition: speedy.c:2132
psubw_r2r
#define psubw_r2r(regs, regd)
Definition: mmx.h:480
width
unsigned int width
Definition: gfontrle.c:4
movd_m2r
#define movd_m2r(var, reg)
Definition: mmx.h:426
Y_R
static int Y_R[256]
Definition: speedy.c:2131
Y_B
static int Y_B[256]
Definition: speedy.c:2133
vfilter_chroma_332_packed422_scanline
void(* vfilter_chroma_332_packed422_scanline)(uint8_t *output, int width, uint8_t *m, uint8_t *t, uint8_t *b)
Definition: speedy.c:154
composite_alphamask_to_packed4444_scanline_c
static void composite_alphamask_to_packed4444_scanline_c(uint8_t *output, uint8_t *input, uint8_t *mask, int width, int textluma, int textcb, int textcr)
Definition: speedy.c:1724
Cb_R
static int Cb_R[256]
Definition: speedy.c:2134
mirror_packed422_inplace_scanline
void(* mirror_packed422_inplace_scanline)(uint8_t *data, int width)
Definition: speedy.c:105
B_Cb
static int B_Cb[256]
Definition: speedy.c:2146
packed422_to_packed444_rec601_scanline
void(* packed422_to_packed444_rec601_scanline)(uint8_t *dest, uint8_t *src, int width)
Definition: speedy.c:135
comb_factor_packed422_scanline
unsigned int(* comb_factor_packed422_scanline)(uint8_t *top, uint8_t *mid, uint8_t *bot, int width)
Definition: speedy.c:102
ABS
#define ABS(a)
Definition: speedy.c:431
rgb24_to_packed444_rec601_scanline
void(* rgb24_to_packed444_rec601_scanline)(uint8_t *output, uint8_t *input, int width)
Definition: speedy.c:141
speedy_get_accel
uint32_t speedy_get_accel(void)
Definition: speedy.c:2684
mmx_t
Definition: mmx.h:53
packed444_to_nonpremultiplied_packed4444_scanline
void(* packed444_to_nonpremultiplied_packed4444_scanline)(uint8_t *output, uint8_t *input, int width, int alpha)
Definition: speedy.c:120
movntq_r2m
#define movntq_r2m(mmreg, var)
Definition: mmx.h:223
speedy_memcpy_mmxext
#define speedy_memcpy_mmxext
Definition: speedy.c:1399
invert_colour_packed422_inplace_scanline
void(* invert_colour_packed422_inplace_scanline)(uint8_t *data, int width)
Definition: speedy.c:151
psubb_r2r
#define psubb_r2r(regs, regd)
Definition: mmx.h:484
packed444_to_packed422_scanline
void(* packed444_to_packed422_scanline)(uint8_t *output, uint8_t *input, int width)
Definition: speedy.c:129
halfmirror_packed422_inplace_scanline
void(* halfmirror_packed422_inplace_scanline)(uint8_t *data, int width)
Definition: speedy.c:106
blit_colour_packed422_scanline
void(* blit_colour_packed422_scanline)(uint8_t *output, int width, int y, int cb, int cr)
Definition: speedy.c:74
blend_packed422_scanline_c
static void blend_packed422_scanline_c(uint8_t *output, uint8_t *src1, uint8_t *src2, int width, int pos)
Definition: speedy.c:1942
conv_YR_inited
static int conv_YR_inited
Definition: speedy.c:2147
diff_packed422_block8x8
void(* diff_packed422_block8x8)(pulldown_metrics_t *m, uint8_t *old, uint8_t *new, int os, int ns)
Definition: speedy.c:108
psllw_i2r
#define psllw_i2r(imm, reg)
Definition: mmx.h:625
rgba32_to_packed4444_rec601_scanline_c
static void rgba32_to_packed4444_rec601_scanline_c(uint8_t *output, uint8_t *input, int width)
Definition: speedy.c:2258
emms
#define emms()
Definition: mmx.h:732
pcmpgtw_r2r
#define pcmpgtw_r2r(regs, regd)
Definition: mmx.h:605
blit_colour_packed4444_scanline
void(* blit_colour_packed4444_scanline)(uint8_t *output, int width, int alpha, int luma, int cb, int cr)
Definition: speedy.c:76
blend_packed422_scanline
void(* blend_packed422_scanline)(uint8_t *output, uint8_t *src1, uint8_t *src2, int width, int pos)
Definition: speedy.c:97
movq_r2m
#define movq_r2m(reg, var)
Definition: mmx.h:412
READ_PREFETCH_2048
#define READ_PREFETCH_2048(x)
Definition: speedtools.h:39
Cr_G
static int Cr_G[256]
Definition: speedy.c:2138
interpolate_packed422_scanline
void(* interpolate_packed422_scanline)(uint8_t *output, uint8_t *top, uint8_t *bot, int width)
Definition: speedy.c:72
speedy_memcpy
void *(* speedy_memcpy)(void *output, const void *input, size_t size)
Definition: speedy.c:107
height
unsigned int height
Definition: gfontrle.c:5
a8_subpix_blit_scanline
void(* a8_subpix_blit_scanline)(uint8_t *output, uint8_t *input, int lasta, int startpos, int width)
Definition: speedy.c:110
MM_ACCEL_X86_SSE2
#define MM_ACCEL_X86_SSE2
Definition: xineutils.h:168
diff_factor_packed422_scanline
unsigned int(* diff_factor_packed422_scanline)(uint8_t *cur, uint8_t *old, int width)
Definition: speedy.c:101
packed422_to_packed444_rec601_scanline_c
static void packed422_to_packed444_rec601_scanline_c(uint8_t *dest, uint8_t *src, int width)
Definition: speedy.c:640
quarter_blit_vertical_packed422_scanline
void(* quarter_blit_vertical_packed422_scanline)(uint8_t *output, uint8_t *one, uint8_t *three, int width)
Definition: speedy.c:112
composite_alphamask_alpha_to_packed4444_scanline
void(* composite_alphamask_alpha_to_packed4444_scanline)(uint8_t *output, uint8_t *input, uint8_t *mask, int width, int textluma, int textcb, int textcr, int alpha)
Definition: speedy.c:91
a8_subpix_blit_scanline_c
static void a8_subpix_blit_scanline_c(uint8_t *output, uint8_t *input, int lasta, int startpos, int width)
Definition: speedy.c:2092
vfilter_chroma_121_packed422_scanline
void(* vfilter_chroma_121_packed422_scanline)(uint8_t *output, int width, uint8_t *m, uint8_t *t, uint8_t *b)
Definition: speedy.c:152
mirror_packed422_inplace_scanline
void(* mirror_packed422_inplace_scanline)(uint8_t *data, int width)
Definition: speedy.c:105
pmullw_r2r
#define pmullw_r2r(regs, regd)
Definition: mmx.h:513
speedy.h
premultiply_packed4444_scanline_c
static void premultiply_packed4444_scanline_c(uint8_t *output, uint8_t *input, int width)
Definition: speedy.c:1888
init_RGB_to_YCbCr_tables
static void init_RGB_to_YCbCr_tables(void)
Definition: speedy.c:2157
rgb24_to_packed444_rec601_scanline_c
static void rgb24_to_packed444_rec601_scanline_c(uint8_t *output, uint8_t *input, int width)
Definition: speedy.c:2241
myround
static int myround(double n)
Definition: speedy.c:2149
rgba32_to_packed4444_rec601_scanline
void(* rgba32_to_packed4444_rec601_scanline)(uint8_t *output, uint8_t *input, int width)
Definition: speedy.c:144
chroma_422_to_444_mpeg2_plane
void(* chroma_422_to_444_mpeg2_plane)(uint8_t *dst, uint8_t *src, int width, int height)
Definition: speedy.c:147
FP_BITS
#define FP_BITS
Definition: speedy.c:2127
R_Cr
static int R_Cr[256]
Definition: speedy.c:2143
invert_colour_packed422_inplace_scanline_c
static void invert_colour_packed422_inplace_scanline_c(uint8_t *data, int width)
Definition: speedy.c:993
config.h
movq_r2r
#define movq_r2r(regs, regd)
Definition: mmx.h:413
blit_colour_packed422_scanline
void(* blit_colour_packed422_scanline)(uint8_t *output, int width, int y, int cb, int cr)
Definition: speedy.c:74
blit_colour_packed4444_scanline_c
static void blit_colour_packed4444_scanline_c(uint8_t *output, int width, int alpha, int luma, int cb, int cr)
Definition: speedy.c:1308
chroma_422_to_444_mpeg2_plane_c
static void chroma_422_to_444_mpeg2_plane_c(uint8_t *dst, uint8_t *src, int width, int height)
Definition: speedy.c:2451
packed444_to_rgb24_rec601_scanline
void(* packed444_to_rgb24_rec601_scanline)(uint8_t *output, uint8_t *input, int width)
Definition: speedy.c:138
punpckhbw_r2r
#define punpckhbw_r2r(regs, regd)
Definition: mmx.h:712
pand_r2r
#define pand_r2r(regs, regd)
Definition: mmx.h:555
speedy_memcpy_c
#define speedy_memcpy_c
Definition: speedy.c:1397
filter_luma_121_packed422_inplace_scanline_c
static void filter_luma_121_packed422_inplace_scanline_c(uint8_t *data, int width)
Definition: speedy.c:1051
G_Cb
static int G_Cb[256]
Definition: speedy.c:2144
subpix_blit_vertical_packed422_scanline_c
static void subpix_blit_vertical_packed422_scanline_c(uint8_t *output, uint8_t *top, uint8_t *bot, int subpixpos, int width)
Definition: speedy.c:2073
pulldown_metrics_s
Definition: speedy.h:48
pulldown_metrics_s::d
int d
Definition: speedy.h:50
composite_packed4444_alpha_to_packed422_scanline
void(* composite_packed4444_alpha_to_packed422_scanline)(uint8_t *output, uint8_t *input, uint8_t *foreground, int width, int alpha)
Definition: speedy.c:82
premultiply_packed4444_scanline
void(* premultiply_packed4444_scanline)(uint8_t *output, uint8_t *input, int width)
Definition: speedy.c:96
blit_colour_packed422_scanline_c
static void blit_colour_packed422_scanline_c(uint8_t *output, int width, int y, int cb, int cr)
Definition: speedy.c:1217
composite_packed4444_alpha_to_packed422_scanline_c
static void composite_packed4444_alpha_to_packed422_scanline_c(uint8_t *output, uint8_t *input, uint8_t *foreground, int width, int alpha)
Definition: speedy.c:1421
input
static int input(void)
Definition: goomsl_lex.c:1495
packed422_to_packed444_scanline_c
static void packed422_to_packed444_scanline_c(uint8_t *output, uint8_t *input, int width)
Definition: speedy.c:620
a8_subpix_blit_scanline
void(* a8_subpix_blit_scanline)(uint8_t *output, uint8_t *input, int lasta, int startpos, int width)
Definition: speedy.c:110
paddb_r2r
#define paddb_r2r(regs, regd)
Definition: mmx.h:447
packuswb_r2r
#define packuswb_r2r(regs, regd)
Definition: mmx.h:678
filter_luma_121_packed422_inplace_scanline
void(* filter_luma_121_packed422_inplace_scanline)(uint8_t *data, int width)
Definition: speedy.c:99
G_Cr
static int G_Cr[256]
Definition: speedy.c:2145
vfilter_chroma_121_packed422_scanline_c
static void vfilter_chroma_121_packed422_scanline_c(uint8_t *output, int width, uint8_t *m, uint8_t *t, uint8_t *b)
Definition: speedy.c:730
quarter_blit_vertical_packed422_scanline
void(* quarter_blit_vertical_packed422_scanline)(uint8_t *output, uint8_t *one, uint8_t *three, int width)
Definition: speedy.c:112
RGB_Y
static int RGB_Y[256]
Definition: speedy.c:2142
MM_ACCEL_X86_MMXEXT
#define MM_ACCEL_X86_MMXEXT
Definition: xineutils.h:166
vfilter_chroma_121_packed422_scanline
void(* vfilter_chroma_121_packed422_scanline)(uint8_t *output, int width, uint8_t *m, uint8_t *t, uint8_t *b)
Definition: speedy.c:152
packed444_to_nonpremultiplied_packed4444_scanline
void(* packed444_to_nonpremultiplied_packed4444_scanline)(uint8_t *output, uint8_t *input, int width, int alpha)
Definition: speedy.c:120
composite_alphamask_to_packed4444_scanline
void(* composite_alphamask_to_packed4444_scanline)(uint8_t *output, uint8_t *input, uint8_t *mask, int width, int textluma, int textcb, int textcr)
Definition: speedy.c:86
vfilter_chroma_332_packed422_scanline_c
static void vfilter_chroma_332_packed422_scanline_c(uint8_t *output, int width, uint8_t *m, uint8_t *t, uint8_t *b)
Definition: speedy.c:928
packed422_to_packed444_scanline
void(* packed422_to_packed444_scanline)(uint8_t *output, uint8_t *input, int width)
Definition: speedy.c:132
subpix_blit_vertical_packed422_scanline
void(* subpix_blit_vertical_packed422_scanline)(uint8_t *output, uint8_t *top, uint8_t *bot, int subpixpos, int width)
Definition: speedy.c:114
invert_colour_packed422_inplace_scanline
void(* invert_colour_packed422_inplace_scanline)(uint8_t *data, int width)
Definition: speedy.c:151