1 #ifndef VPX_SCALE_RTCD_H_
2 #define VPX_SCALE_RTCD_H_
7 #define RTCD_EXTERN extern
10 struct yv12_buffer_config
;
12 void vp8_horizontal_line_5_4_scale_c(const unsigned char *source
, unsigned int source_width
, unsigned char *dest
, unsigned int dest_width
);
13 #define vp8_horizontal_line_5_4_scale vp8_horizontal_line_5_4_scale_c
15 void vp8_vertical_band_5_4_scale_c(unsigned char *source
, unsigned int src_pitch
, unsigned char *dest
, unsigned int dest_pitch
, unsigned int dest_width
);
16 #define vp8_vertical_band_5_4_scale vp8_vertical_band_5_4_scale_c
18 void vp8_horizontal_line_5_3_scale_c(const unsigned char *source
, unsigned int source_width
, unsigned char *dest
, unsigned int dest_width
);
19 #define vp8_horizontal_line_5_3_scale vp8_horizontal_line_5_3_scale_c
21 void vp8_vertical_band_5_3_scale_c(unsigned char *source
, unsigned int src_pitch
, unsigned char *dest
, unsigned int dest_pitch
, unsigned int dest_width
);
22 #define vp8_vertical_band_5_3_scale vp8_vertical_band_5_3_scale_c
24 void vp8_horizontal_line_2_1_scale_c(const unsigned char *source
, unsigned int source_width
, unsigned char *dest
, unsigned int dest_width
);
25 #define vp8_horizontal_line_2_1_scale vp8_horizontal_line_2_1_scale_c
27 void vp8_vertical_band_2_1_scale_c(unsigned char *source
, unsigned int src_pitch
, unsigned char *dest
, unsigned int dest_pitch
, unsigned int dest_width
);
28 #define vp8_vertical_band_2_1_scale vp8_vertical_band_2_1_scale_c
30 void vp8_vertical_band_2_1_scale_i_c(unsigned char *source
, unsigned int src_pitch
, unsigned char *dest
, unsigned int dest_pitch
, unsigned int dest_width
);
31 #define vp8_vertical_band_2_1_scale_i vp8_vertical_band_2_1_scale_i_c
33 void vp8_yv12_extend_frame_borders_c(struct yv12_buffer_config
*ybf
);
34 #define vp8_yv12_extend_frame_borders vp8_yv12_extend_frame_borders_c
36 void vp8_yv12_copy_frame_c(const struct yv12_buffer_config
*src_ybc
, struct yv12_buffer_config
*dst_ybc
);
37 #define vp8_yv12_copy_frame vp8_yv12_copy_frame_c
39 void vpx_yv12_copy_y_c(const struct yv12_buffer_config
*src_ybc
, struct yv12_buffer_config
*dst_ybc
);
40 #define vpx_yv12_copy_y vpx_yv12_copy_y_c
42 void vp9_extend_frame_borders_c(struct yv12_buffer_config
*ybf
, int subsampling_x
, int subsampling_y
);
43 #define vp9_extend_frame_borders vp9_extend_frame_borders_c
45 void vp9_extend_frame_inner_borders_c(struct yv12_buffer_config
*ybf
, int subsampling_x
, int subsampling_y
);
46 #define vp9_extend_frame_inner_borders vp9_extend_frame_inner_borders_c
48 void vpx_scale_rtcd(void);
51 #include "vpx_ports/x86.h"
52 static void setup_rtcd_internal(void)
54 int flags
= x86_simd_caps();