diff options
Diffstat (limited to 'silk/dred_encoder.c')
-rw-r--r-- | silk/dred_encoder.c | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/silk/dred_encoder.c b/silk/dred_encoder.c index 8628863d..d799a5e2 100644 --- a/silk/dred_encoder.c +++ b/silk/dred_encoder.c @@ -27,8 +27,10 @@ #include <string.h> +#if 1 #include <stdio.h> #include <math.h> +#endif #ifdef HAVE_CONFIG_H #include "config.h" @@ -38,6 +40,8 @@ #include "dred_coding.h" #include "celt/entenc.h" +#include "dred_decoder.h" + void init_dred_encoder(DREDEnc* enc) { memset(enc, 0, sizeof(*enc)); @@ -112,6 +116,29 @@ void dred_encode_silk_frame(DREDEnc *enc, const opus_int16 *silk_frame) fwrite(ec_get_buffer(&enc->ec_encoder), 1, bytes, fbs); #endif +#if 0 + DREDDec dec; + float dec_features[2 * DRED_NUM_REDUNDANCY_FRAMES * DRED_NUM_FEATURES]; + float zeros[36 - 20] = {0}; + + init_dred_decoder(&dec); + dred_decode_redundancy_package(&dec, dec_features, ec_get_buffer(&enc->ec_encoder), bytes); + + static FILE *fid; + if (fid == NULL) + { + fid = fopen("features_rdovae.f32", "wb"); + } + + int foffset = (2*DRED_NUM_REDUNDANCY_FRAMES - 2) * DRED_NUM_FEATURES; + foffset = 0; + fwrite(&dec_features[foffset], sizeof(float), DRED_NUM_FEATURES, fid); + fwrite(zeros, sizeof(float), 16, fid); + fwrite(&dec_features[foffset + DRED_NUM_FEATURES], sizeof(float), DRED_NUM_FEATURES, fid); + fwrite(zeros, sizeof(float), 16, fid); + + dred_deinit_decoder(&dec); +#endif #if 0 /* trial decoding */ |