summaryrefslogtreecommitdiff
path: root/silk/SigProc_FIX.h
diff options
context:
space:
mode:
authorLinfeng Zhang <linfengz@google.com>2016-09-01 13:44:11 -0700
committerJean-Marc Valin <jmvalin@jmvalin.ca>2017-05-17 15:55:42 -0400
commit60eb7d88b4eace91395e553cf70fc4578a950353 (patch)
tree489d13c37dbb73fe5ad385df7057e5cef49d4d5b /silk/SigProc_FIX.h
parent1eaa67c0dce1f642af872cc26b7ff4b057a55bfb (diff)
downloadopus-60eb7d88b4eace91395e553cf70fc4578a950353.tar.gz
Update silk_biquad_alt()
Split to silk_biquad_alt_stride1() and silk_biquad_alt_stride2(), so that it can be optimized more efficiently when stride is 2. This change in C code is bit exact with the origin. Change-Id: Idaefe670397016ace2a489e3435ac61b7dbe79d5 Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
Diffstat (limited to 'silk/SigProc_FIX.h')
-rw-r--r--silk/SigProc_FIX.h14
1 files changed, 11 insertions, 3 deletions
diff --git a/silk/SigProc_FIX.h b/silk/SigProc_FIX.h
index e0c39679..43f9ffac 100644
--- a/silk/SigProc_FIX.h
+++ b/silk/SigProc_FIX.h
@@ -100,14 +100,22 @@ void silk_resampler_down2_3(
* slower than biquad() but uses more precise coefficients
* can handle (slowly) varying coefficients
*/
-void silk_biquad_alt(
+void silk_biquad_alt_stride1(
const opus_int16 *in, /* I input signal */
const opus_int32 *B_Q28, /* I MA coefficients [3] */
const opus_int32 *A_Q28, /* I AR coefficients [2] */
opus_int32 *S, /* I/O State vector [2] */
opus_int16 *out, /* O output signal */
- const opus_int32 len, /* I signal length (must be even) */
- opus_int stride /* I Operate on interleaved signal if > 1 */
+ const opus_int32 len /* I signal length (must be even) */
+);
+
+void silk_biquad_alt_stride2(
+ const opus_int16 *in, /* I input signal */
+ const opus_int32 *B_Q28, /* I MA coefficients [3] */
+ const opus_int32 *A_Q28, /* I AR coefficients [2] */
+ opus_int32 *S, /* I/O State vector [4] */
+ opus_int16 *out, /* O output signal */
+ const opus_int32 len /* I signal length (must be even) */
);
/* Variable order MA prediction error filter. */