summaryrefslogtreecommitdiff
path: root/sbc/sbc_primitives.c
diff options
context:
space:
mode:
authorFrédéric Dalleau <frederic.dalleau@linux.intel.com>2013-04-08 15:24:03 +0200
committerJohan Hedberg <johan.hedberg@intel.com>2013-04-15 10:58:04 +0300
commit92f3298371bea8bbdf02b6a64ba9e624b4befc47 (patch)
tree978ea8f70d7eec4bbbbbcaafd374a0f1c31f2fd5 /sbc/sbc_primitives.c
parent49dcc23f95f11b53fee495226886b0ba0f62e63c (diff)
downloadsbc-92f3298371bea8bbdf02b6a64ba9e624b4befc47.tar.gz
sbc: Add encoder_state to analysis functions
Until now, SIMD analysis used to process 4 blocks of 8 samples at a time. This was implemented using two constant tables: odd and even. This mean we can only process 4, 8, 12, or 16 blocks par SBC packets. mSBC requires 15 blocks, so to be able to analyse 1 block, it will be necessary to know if we are processing an odd or even block. This will be done with a new member to encoder_state.
Diffstat (limited to 'sbc/sbc_primitives.c')
-rw-r--r--sbc/sbc_primitives.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/sbc/sbc_primitives.c b/sbc/sbc_primitives.c
index ad780d0..f8cc4b6 100644
--- a/sbc/sbc_primitives.c
+++ b/sbc/sbc_primitives.c
@@ -183,8 +183,8 @@ static inline void sbc_analyze_eight_simd(const int16_t *in, int32_t *out,
(SBC_COS_TABLE_FIXED8_SCALE - SCALE_OUT_BITS);
}
-static inline void sbc_analyze_4b_4s_simd(int16_t *x,
- int32_t *out, int out_stride)
+static inline void sbc_analyze_4b_4s_simd(struct sbc_encoder_state *state,
+ int16_t *x, int32_t *out, int out_stride)
{
/* Analyze blocks */
sbc_analyze_four_simd(x + 12, out, analysis_consts_fixed4_simd_odd);
@@ -196,8 +196,8 @@ static inline void sbc_analyze_4b_4s_simd(int16_t *x,
sbc_analyze_four_simd(x + 0, out, analysis_consts_fixed4_simd_even);
}
-static inline void sbc_analyze_4b_8s_simd(int16_t *x,
- int32_t *out, int out_stride)
+static inline void sbc_analyze_4b_8s_simd(struct sbc_encoder_state *state,
+ int16_t *x, int32_t *out, int out_stride)
{
/* Analyze blocks */
sbc_analyze_eight_simd(x + 24, out, analysis_consts_fixed8_simd_odd);