Mercurial > libavcodec.hg
comparison acelp_filters.c @ 11648:0516f4062307 libavcodec
Split input/output data arguments to ff_acelp_apply_order_2_transfer_function().
author | rbultje |
---|---|
date | Wed, 21 Apr 2010 17:45:24 +0000 |
parents | 7f9d077af2e4 |
children |
comparison
equal
deleted
inserted
replaced
11647:26aabf52f578 | 11648:0516f4062307 |
---|---|
112 hpf_f[1] = hpf_f[0]; | 112 hpf_f[1] = hpf_f[0]; |
113 hpf_f[0] = tmp; | 113 hpf_f[0] = tmp; |
114 } | 114 } |
115 } | 115 } |
116 | 116 |
117 void ff_acelp_apply_order_2_transfer_function(float *buf, | 117 void ff_acelp_apply_order_2_transfer_function(float *out, const float *in, |
118 const float zero_coeffs[2], | 118 const float zero_coeffs[2], |
119 const float pole_coeffs[2], | 119 const float pole_coeffs[2], |
120 float gain, float mem[2], int n) | 120 float gain, float mem[2], int n) |
121 { | 121 { |
122 int i; | 122 int i; |
123 float tmp; | 123 float tmp; |
124 | 124 |
125 for (i = 0; i < n; i++) { | 125 for (i = 0; i < n; i++) { |
126 tmp = gain * buf[i] - pole_coeffs[0] * mem[0] - pole_coeffs[1] * mem[1]; | 126 tmp = gain * in[i] - pole_coeffs[0] * mem[0] - pole_coeffs[1] * mem[1]; |
127 buf[i] = tmp + zero_coeffs[0] * mem[0] + zero_coeffs[1] * mem[1]; | 127 out[i] = tmp + zero_coeffs[0] * mem[0] + zero_coeffs[1] * mem[1]; |
128 | 128 |
129 mem[1] = mem[0]; | 129 mem[1] = mem[0]; |
130 mem[0] = tmp; | 130 mem[0] = tmp; |
131 } | 131 } |
132 } | 132 } |