1#ifndef VPX_SCALE_RTCD_H_ 2#define VPX_SCALE_RTCD_H_ 3 4#ifdef RTCD_C 5#define RTCD_EXTERN 6#else 7#define RTCD_EXTERN extern 8#endif 9 10#ifdef __cplusplus 11extern "C" { 12#endif 13 14struct yv12_buffer_config; 15 16void vp8_horizontal_line_2_1_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width); 17#define vp8_horizontal_line_2_1_scale vp8_horizontal_line_2_1_scale_c 18 19void vp8_horizontal_line_5_3_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width); 20#define vp8_horizontal_line_5_3_scale vp8_horizontal_line_5_3_scale_c 21 22void vp8_horizontal_line_5_4_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width); 23#define vp8_horizontal_line_5_4_scale vp8_horizontal_line_5_4_scale_c 24 25void 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); 26#define vp8_vertical_band_2_1_scale vp8_vertical_band_2_1_scale_c 27 28void 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); 29#define vp8_vertical_band_2_1_scale_i vp8_vertical_band_2_1_scale_i_c 30 31void 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); 32#define vp8_vertical_band_5_3_scale vp8_vertical_band_5_3_scale_c 33 34void 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); 35#define vp8_vertical_band_5_4_scale vp8_vertical_band_5_4_scale_c 36 37void vp8_yv12_copy_frame_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc); 38#define vp8_yv12_copy_frame vp8_yv12_copy_frame_c 39 40void vp8_yv12_extend_frame_borders_c(struct yv12_buffer_config *ybf); 41#define vp8_yv12_extend_frame_borders vp8_yv12_extend_frame_borders_c 42 43void vp9_extend_frame_borders_c(struct yv12_buffer_config *ybf); 44void vp9_extend_frame_borders_dspr2(struct yv12_buffer_config *ybf); 45#define vp9_extend_frame_borders vp9_extend_frame_borders_dspr2 46 47void vp9_extend_frame_inner_borders_c(struct yv12_buffer_config *ybf); 48void vp9_extend_frame_inner_borders_dspr2(struct yv12_buffer_config *ybf); 49#define vp9_extend_frame_inner_borders vp9_extend_frame_inner_borders_dspr2 50 51void vpx_yv12_copy_y_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc); 52#define vpx_yv12_copy_y vpx_yv12_copy_y_c 53 54void vpx_scale_rtcd(void); 55 56#include "vpx_config.h" 57 58#ifdef RTCD_C 59static void setup_rtcd_internal(void) 60{ 61#if HAVE_DSPR2 62#if CONFIG_VP8 63void dsputil_static_init(); 64dsputil_static_init(); 65#endif 66#if CONFIG_VP9 67void vp9_dsputil_static_init(); 68vp9_dsputil_static_init(); 69#endif 70#endif 71} 72#endif 73 74#ifdef __cplusplus 75} // extern "C" 76#endif 77 78#endif 79