summaryrefslogtreecommitdiff
path: root/silk/shell_coder.c
diff options
context:
space:
mode:
authorJean-Marc Valin <jmvalin@jmvalin.ca>2014-01-06 21:59:48 -0500
committerJean-Marc Valin <jmvalin@jmvalin.ca>2014-01-06 21:59:48 -0500
commitdce69d2b9b4f33ecb482023f0fe1230ef5b53235 (patch)
treecbe39b13272b5bc14e1cd25c4001a60cdf7463ee /silk/shell_coder.c
parentad8371d172e930c28bc66da165bf8498c5d16d15 (diff)
downloadopus-dce69d2b9b4f33ecb482023f0fe1230ef5b53235.tar.gz
Store decoded SILK pulses as 16-bit vector
This saves 640 bytes on the peak stack usage.
Diffstat (limited to 'silk/shell_coder.c')
-rw-r--r--silk/shell_coder.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/silk/shell_coder.c b/silk/shell_coder.c
index 796f57d6..4af34147 100644
--- a/silk/shell_coder.c
+++ b/silk/shell_coder.c
@@ -58,8 +58,8 @@ static OPUS_INLINE void encode_split(
}
static OPUS_INLINE void decode_split(
- opus_int *p_child1, /* O pulse amplitude of first child subframe */
- opus_int *p_child2, /* O pulse amplitude of second child subframe */
+ opus_int16 *p_child1, /* O pulse amplitude of first child subframe */
+ opus_int16 *p_child2, /* O pulse amplitude of second child subframe */
ec_dec *psRangeDec, /* I/O Compressor data structure */
const opus_int p, /* I pulse amplitude of current subframe */
const opus_uint8 *shell_table /* I table of shell cdfs */
@@ -117,12 +117,12 @@ void silk_shell_encoder(
/* Shell decoder, operates on one shell code frame of 16 pulses */
void silk_shell_decoder(
- opus_int *pulses0, /* O data: nonnegative pulse amplitudes */
+ opus_int16 *pulses0, /* O data: nonnegative pulse amplitudes */
ec_dec *psRangeDec, /* I/O Compressor data structure */
const opus_int pulses4 /* I number of pulses per pulse-subframe */
)
{
- opus_int pulses3[ 2 ], pulses2[ 4 ], pulses1[ 8 ];
+ opus_int16 pulses3[ 2 ], pulses2[ 4 ], pulses1[ 8 ];
/* this function operates on one shell code frame of 16 pulses */
silk_assert( SHELL_CODEC_FRAME_LENGTH == 16 );