diff options
Diffstat (limited to 'src/opus_decoder.c')
-rw-r--r-- | src/opus_decoder.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/opus_decoder.c b/src/opus_decoder.c index f8de4e49..4c238a8a 100644 --- a/src/opus_decoder.c +++ b/src/opus_decoder.c @@ -1118,10 +1118,13 @@ int opus_decoder_dred_input(OpusDecoder *st, const unsigned char *data, if (payload != NULL) { int min_feature_frames; + silk_decoder_state *silk_dec; + silk_dec = (silk_decoder_state*)((char*)st+st->silk_dec_offset); /*printf("Found: %p of size %d\n", payload, payload_len);*/ min_feature_frames = IMIN(2 + offset, 2*DRED_NUM_REDUNDANCY_FRAMES); st->nb_fec_frames = dred_decode_redundancy_package(&st->dred_decoder, st->fec_features, payload, payload_len, min_feature_frames); - return 1; + lpcnet_plc_fec_clear(silk_dec->sPLC.lpcnet); + return st->nb_fec_frames; } return 0; } |