ref: d1b48b716a881970d3b17d6bb58a85cd3983b245
parent: 2d25ea19d597b9cb86edcc05a21ec9c3c8bd1583
author: Jean-Marc Valin <jmvalin@amazon.com>
date: Wed Dec 7 07:56:14 EST 2022
DRED: better naming
--- a/silk/dred_decoder.c
+++ b/silk/dred_decoder.c
@@ -47,7 +47,7 @@
DRED_rdovae_destroy_decoder(dec->rdovae_dec);
}
-int dred_decode_redundancy_package(DREDDec *dec, float *features, const opus_uint8 *bytes, int num_bytes, int max_fec_frames)
+int dred_decode_redundancy_package(DREDDec *dec, float *features, const opus_uint8 *bytes, int num_bytes, int min_feature_frames)
{
const opus_uint16 *p0 = DRED_rdovae_get_p0_pointer();
const opus_uint16 *quant_scales = DRED_rdovae_get_quant_scales_pointer();
@@ -70,7 +70,7 @@
DRED_rdovae_dec_init_states(dec->rdovae_dec, state);
/* decode newest to oldest and store oldest to newest */
- for (i = 0; i < IMIN(DRED_NUM_REDUNDANCY_FRAMES, (max_fec_frames+1)/2); i += 2)
+ for (i = 0; i < IMIN(DRED_NUM_REDUNDANCY_FRAMES, (min_feature_frames+1)/2); i += 2)
{
/* FIXME: Figure out how to avoid missing a last frame that would take up < 8 bits. */
if (8*num_bytes - ec_tell(&ec) <= 7)
--- a/silk/dred_decoder.h
+++ b/silk/dred_decoder.h
@@ -38,4 +38,4 @@
void dred_deinit_decoder(DREDDec *dec);
-int dred_decode_redundancy_package(DREDDec *dec, float *features, const opus_uint8 *bytes, int num_bytes, int max_fec_frames);
+int dred_decode_redundancy_package(DREDDec *dec, float *features, const opus_uint8 *bytes, int num_bytes, int min_feature_frames);
--- a/src/opus_decoder.c
+++ b/src/opus_decoder.c
@@ -1090,12 +1090,12 @@
}
if (payload != NULL)
{
- int max_fec_frames;
+ 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);*/
- max_fec_frames = IMIN(2 + offset, 2*DRED_NUM_REDUNDANCY_FRAMES);
- silk_dec->sPLC.nb_fec_frames = dred_decode_redundancy_package(&silk_dec->sPLC.dred_decoder, silk_dec->sPLC.fec_features, payload, payload_len, max_fec_frames);
+ min_feature_frames = IMIN(2 + offset, 2*DRED_NUM_REDUNDANCY_FRAMES);
+ silk_dec->sPLC.nb_fec_frames = dred_decode_redundancy_package(&silk_dec->sPLC.dred_decoder, silk_dec->sPLC.fec_features, payload, payload_len, min_feature_frames);
/*printf("%d\n", silk_dec->sPLC.nb_fec_frames);*/
return 1;
}
--
⑨