14b95526e5c4eb4fecde1cd642cf991a82c51b9f2johannkoenig@chromium.org#ifndef VPX_SCALE_RTCD_H_ 24b95526e5c4eb4fecde1cd642cf991a82c51b9f2johannkoenig@chromium.org#define VPX_SCALE_RTCD_H_ 38ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org 48ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org#ifdef RTCD_C 58ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org#define RTCD_EXTERN 68ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org#else 78ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org#define RTCD_EXTERN extern 88ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org#endif 98ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org 10dddee1ec7cedf276305b107429f684539b105276johannkoenig@chromium.org#ifdef __cplusplus 11dddee1ec7cedf276305b107429f684539b105276johannkoenig@chromium.orgextern "C" { 12dddee1ec7cedf276305b107429f684539b105276johannkoenig@chromium.org#endif 13dddee1ec7cedf276305b107429f684539b105276johannkoenig@chromium.org 148ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.orgstruct yv12_buffer_config; 158ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org 1662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp8_horizontal_line_2_1_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width); 1762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp8_horizontal_line_2_1_scale vp8_horizontal_line_2_1_scale_c 188ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org 198ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.orgvoid vp8_horizontal_line_5_3_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width); 208ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org#define vp8_horizontal_line_5_3_scale vp8_horizontal_line_5_3_scale_c 218ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org 2262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp8_horizontal_line_5_4_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width); 2362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp8_horizontal_line_5_4_scale vp8_horizontal_line_5_4_scale_c 248ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org 258ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.orgvoid 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); 268ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org#define vp8_vertical_band_2_1_scale vp8_vertical_band_2_1_scale_c 278ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org 288ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.orgvoid 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); 298ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org#define vp8_vertical_band_2_1_scale_i vp8_vertical_band_2_1_scale_i_c 308ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org 3162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid 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); 3262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp8_vertical_band_5_3_scale vp8_vertical_band_5_3_scale_c 3362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 3462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid 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); 3562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp8_vertical_band_5_4_scale vp8_vertical_band_5_4_scale_c 368ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org 3753a13f1fa964820f7a8f9d3932a6f3c0433f8bf5fgalligan@chromium.orgvoid vp8_yv12_copy_frame_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc); 388ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org#define vp8_yv12_copy_frame vp8_yv12_copy_frame_c 398ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org 4062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp8_yv12_extend_frame_borders_c(struct yv12_buffer_config *ybf); 4162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp8_yv12_extend_frame_borders vp8_yv12_extend_frame_borders_c 428ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org 4362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_extend_frame_borders_c(struct yv12_buffer_config *ybf); 4410a9a0d835561a7f2300c561c514efcf374554d6fgalligan@chromium.org#define vp9_extend_frame_borders vp9_extend_frame_borders_c 4510a9a0d835561a7f2300c561c514efcf374554d6fgalligan@chromium.org 4662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_extend_frame_inner_borders_c(struct yv12_buffer_config *ybf); 471caff2f5cf4bc45ee1798419784f1416d5787dfefgalligan@chromium.org#define vp9_extend_frame_inner_borders vp9_extend_frame_inner_borders_c 481caff2f5cf4bc45ee1798419784f1416d5787dfefgalligan@chromium.org 4962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vpx_yv12_copy_y_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc); 5062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vpx_yv12_copy_y vpx_yv12_copy_y_c 5162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 528ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.orgvoid vpx_scale_rtcd(void); 538ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org 548ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org#ifdef RTCD_C 558ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org#include "vpx_ports/x86.h" 568ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.orgstatic void setup_rtcd_internal(void) 578ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org{ 588ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org int flags = x86_simd_caps(); 598ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org 608ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org (void)flags; 618ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org 628ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org} 638ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org#endif 64dddee1ec7cedf276305b107429f684539b105276johannkoenig@chromium.org 65dddee1ec7cedf276305b107429f684539b105276johannkoenig@chromium.org#ifdef __cplusplus 66dddee1ec7cedf276305b107429f684539b105276johannkoenig@chromium.org} // extern "C" 67dddee1ec7cedf276305b107429f684539b105276johannkoenig@chromium.org#endif 68dddee1ec7cedf276305b107429f684539b105276johannkoenig@chromium.org 698ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org#endif 70