diff options
Diffstat (limited to 'apps/codecs/libspeex/sb_celp.c')
-rw-r--r-- | apps/codecs/libspeex/sb_celp.c | 21 |
1 files changed, 7 insertions, 14 deletions
diff --git a/apps/codecs/libspeex/sb_celp.c b/apps/codecs/libspeex/sb_celp.c index 313a62e93f..51f255661f 100644 --- a/apps/codecs/libspeex/sb_celp.c +++ b/apps/codecs/libspeex/sb_celp.c | |||
@@ -354,10 +354,8 @@ int sb_encode(void *state, void *vin, SpeexBits *bits) | |||
354 | speex_encode_native(st->st_low, low, bits); | 354 | speex_encode_native(st->st_low, low, bits); |
355 | 355 | ||
356 | high = high - (st->windowSize-st->frame_size); | 356 | high = high - (st->windowSize-st->frame_size); |
357 | for (i=0;i<st->windowSize-st->frame_size;i++) | 357 | SPEEX_COPY(high, st->high, st->windowSize-st->frame_size); |
358 | high[i] = st->high[i]; | 358 | SPEEX_COPY(st->high, &high[st->frame_size], st->windowSize-st->frame_size); |
359 | for (i=0;i<st->windowSize-st->frame_size;i++) | ||
360 | st->high[i] = high[i+st->frame_size]; | ||
361 | 359 | ||
362 | 360 | ||
363 | ALLOC(low_pi_gain, st->nbSubframes, spx_word32_t); | 361 | ALLOC(low_pi_gain, st->nbSubframes, spx_word32_t); |
@@ -690,8 +688,7 @@ int sb_encode(void *state, void *vin, SpeexBits *bits) | |||
690 | signal_div(target, target, scale, st->subframeSize); | 688 | signal_div(target, target, scale, st->subframeSize); |
691 | 689 | ||
692 | /* Reset excitation */ | 690 | /* Reset excitation */ |
693 | for (i=0;i<st->subframeSize;i++) | 691 | SPEEX_MEMSET(innov, 0, st->subframeSize); |
694 | innov[i]=0; | ||
695 | 692 | ||
696 | /*print_vec(target, st->subframeSize, "\ntarget");*/ | 693 | /*print_vec(target, st->subframeSize, "\ntarget");*/ |
697 | SUBMODE(innovation_quant)(target, st->interp_qlpc, bw_lpc1, bw_lpc2, | 694 | SUBMODE(innovation_quant)(target, st->interp_qlpc, bw_lpc1, bw_lpc2, |
@@ -705,8 +702,7 @@ int sb_encode(void *state, void *vin, SpeexBits *bits) | |||
705 | char *tmp_stack=stack; | 702 | char *tmp_stack=stack; |
706 | VARDECL(spx_sig_t *innov2); | 703 | VARDECL(spx_sig_t *innov2); |
707 | ALLOC(innov2, st->subframeSize, spx_sig_t); | 704 | ALLOC(innov2, st->subframeSize, spx_sig_t); |
708 | for (i=0;i<st->subframeSize;i++) | 705 | SPEEX_MEMSET(innov2, 0, st->subframeSize); |
709 | innov2[i]=0; | ||
710 | for (i=0;i<st->subframeSize;i++) | 706 | for (i=0;i<st->subframeSize;i++) |
711 | target[i]=MULT16_16_P13(QCONST16(2.5f,13), target[i]); | 707 | target[i]=MULT16_16_P13(QCONST16(2.5f,13), target[i]); |
712 | 708 | ||
@@ -1018,8 +1014,7 @@ int sb_decode(void *state, SpeexBits *bits, void *vout) | |||
1018 | if (st->innov_save) | 1014 | if (st->innov_save) |
1019 | { | 1015 | { |
1020 | innov_save = st->innov_save+2*offset; | 1016 | innov_save = st->innov_save+2*offset; |
1021 | for (i=0;i<2*st->subframeSize;i++) | 1017 | SPEEX_MEMSET(innov_save, 0, 2*st->subframeSize); |
1022 | innov_save[i]=0; | ||
1023 | } | 1018 | } |
1024 | 1019 | ||
1025 | /* LSP interpolation */ | 1020 | /* LSP interpolation */ |
@@ -1048,8 +1043,7 @@ int sb_decode(void *state, SpeexBits *bits, void *vout) | |||
1048 | filter_ratio=(rl+.01)/(rh+.01); | 1043 | filter_ratio=(rl+.01)/(rh+.01); |
1049 | #endif | 1044 | #endif |
1050 | 1045 | ||
1051 | for (i=0;i<st->subframeSize;i++) | 1046 | SPEEX_MEMSET(exc, 0, st->subframeSize); |
1052 | exc[i]=0; | ||
1053 | if (!SUBMODE(innovation_unquant)) | 1047 | if (!SUBMODE(innovation_unquant)) |
1054 | { | 1048 | { |
1055 | spx_word32_t g; | 1049 | spx_word32_t g; |
@@ -1087,8 +1081,7 @@ int sb_decode(void *state, SpeexBits *bits, void *vout) | |||
1087 | char *tmp_stack=stack; | 1081 | char *tmp_stack=stack; |
1088 | VARDECL(spx_sig_t *innov2); | 1082 | VARDECL(spx_sig_t *innov2); |
1089 | ALLOC(innov2, st->subframeSize, spx_sig_t); | 1083 | ALLOC(innov2, st->subframeSize, spx_sig_t); |
1090 | for (i=0;i<st->subframeSize;i++) | 1084 | SPEEX_MEMSET(innov2, 0, st->subframeSize); |
1091 | innov2[i]=0; | ||
1092 | SUBMODE(innovation_unquant)(innov2, SUBMODE(innovation_params), st->subframeSize, | 1085 | SUBMODE(innovation_unquant)(innov2, SUBMODE(innovation_params), st->subframeSize, |
1093 | bits, stack, &st->seed); | 1086 | bits, stack, &st->seed); |
1094 | signal_mul(innov2, innov2, MULT16_32_P15(QCONST16(0.4f,15),scale), st->subframeSize); | 1087 | signal_mul(innov2, innov2, MULT16_32_P15(QCONST16(0.4f,15),scale), st->subframeSize); |