805078a1bf
significantly speeds up file generation. the goal of this change is to convert rtcd.sh to perl as directly as possible to allow for simple comparison. future changes can make it more perl-like. --- Linux [CREATE] vpx_scale_rtcd.h real 0m0.485s -> 0m0.022s [CREATE] vp8_rtcd.h real 0m4.619s -> 0m0.060s [CREATE] vp9_rtcd.h real 0m10.102s -> 0m0.087s Windows [CREATE] vpx_scale_rtcd.h real 0m8.360s -> 0m0.080s [CREATE] vp8_rtcd.h real 1m8.083s -> 0m0.160s [CREATE] vp9_rtcd.h real 2m6.489s -> 0m0.233s Change-Id: Idfb71188206c91237d6a3c3a81dfe00d103f11ee
36 lines
2.1 KiB
Raku
36 lines
2.1 KiB
Raku
sub vpx_scale_forward_decls() {
|
|
print <<EOF
|
|
struct yv12_buffer_config;
|
|
EOF
|
|
}
|
|
forward_decls qw/vpx_scale_forward_decls/;
|
|
|
|
# Scaler functions
|
|
if (vpx_config("CONFIG_SPATIAL_RESAMPLING") eq "yes") {
|
|
add_proto qw/void vp8_horizontal_line_5_4_scale/, "const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width";
|
|
add_proto qw/void vp8_vertical_band_5_4_scale/, "unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width";
|
|
add_proto qw/void vp8_horizontal_line_5_3_scale/, "const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width";
|
|
add_proto qw/void vp8_vertical_band_5_3_scale/, "unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width";
|
|
add_proto qw/void vp8_horizontal_line_2_1_scale/, "const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width";
|
|
add_proto qw/void vp8_vertical_band_2_1_scale/, "unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width";
|
|
add_proto qw/void vp8_vertical_band_2_1_scale_i/, "unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width";
|
|
}
|
|
|
|
add_proto qw/void vp8_yv12_extend_frame_borders/, "struct yv12_buffer_config *ybf";
|
|
specialize qw/vp8_yv12_extend_frame_borders neon/;
|
|
|
|
add_proto qw/void vp8_yv12_copy_frame/, "const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc";
|
|
specialize qw/vp8_yv12_copy_frame neon/;
|
|
|
|
add_proto qw/void vpx_yv12_copy_y/, "const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc";
|
|
specialize qw/vpx_yv12_copy_y neon/;
|
|
|
|
if (vpx_config("CONFIG_VP9") eq "yes") {
|
|
add_proto qw/void vp9_extend_frame_borders/, "struct yv12_buffer_config *ybf";
|
|
specialize qw/vp9_extend_frame_borders dspr2/;
|
|
|
|
add_proto qw/void vp9_extend_frame_inner_borders/, "struct yv12_buffer_config *ybf";
|
|
specialize qw/vp9_extend_frame_inner_borders dspr2/;
|
|
}
|
|
1;
|