From f7813a5324be39d13ab536c245d15dfc602a7849 Mon Sep 17 00:00:00 2001 From: Tim Redfern Date: Sun, 29 Dec 2013 12:19:38 +0000 Subject: basic type mechanism working --- ffmpeg/libswresample/rematrix_template.c | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) (limited to 'ffmpeg/libswresample/rematrix_template.c') diff --git a/ffmpeg/libswresample/rematrix_template.c b/ffmpeg/libswresample/rematrix_template.c index b8ca901..95a3b9a 100644 --- a/ffmpeg/libswresample/rematrix_template.c +++ b/ffmpeg/libswresample/rematrix_template.c @@ -36,14 +36,20 @@ # define COEFF int # define INTER int # define RENAME(x) x ## _s16 +#elif defined(TEMPLATE_REMATRIX_S32) +# define R(x) (((x) + 16384)>>15) +# define SAMPLE int32_t +# define COEFF int +# define INTER int64_t +# define RENAME(x) x ## _s32 #endif typedef void (RENAME(mix_any_func_type))(SAMPLE **out, const SAMPLE **in1, COEFF *coeffp, integer len); static void RENAME(sum2)(SAMPLE *out, const SAMPLE *in1, const SAMPLE *in2, COEFF *coeffp, integer index1, integer index2, integer len){ int i; - COEFF coeff1 = coeffp[index1]; - COEFF coeff2 = coeffp[index2]; + INTER coeff1 = coeffp[index1]; + INTER coeff2 = coeffp[index2]; for(i=0; i