diff --git a/dnn/kiss_fft.c b/dnn/kiss_fft.c
index 922dacc669c0ecc3043cebb73f695109091c20a3..e647214d56369248efa4ad13257f7b06fb058ea5 100644
--- a/dnn/kiss_fft.c
+++ b/dnn/kiss_fft.c
@@ -506,10 +506,10 @@ void opus_fft_free(const kiss_fft_state *cfg, int arch)
    if (cfg)
    {
       opus_fft_free_arch((kiss_fft_state *)cfg, arch);
-      opus_free((opus_int16*)cfg->bitrev);
+      free((opus_int16*)cfg->bitrev);
       if (cfg->shift < 0)
-         opus_free((kiss_twiddle_cpx*)cfg->twiddles);
-      opus_free((kiss_fft_state*)cfg);
+         free((kiss_twiddle_cpx*)cfg->twiddles);
+      free((kiss_fft_state*)cfg);
    }
 }
 
diff --git a/dnn/kiss_fft.h b/dnn/kiss_fft.h
index b2fe9a4776b010bb360d1145ad82e94241bb8fd1..e152f2c219a681fc4de6d6f7b6aa343cc6f4f906 100644
--- a/dnn/kiss_fft.h
+++ b/dnn/kiss_fft.h
@@ -35,7 +35,7 @@
 
 #include <stdlib.h>
 #define opus_alloc(x) malloc(x)
-#define opus_free(x) free(x)
+//#define opus_free(x) free(x)
 
 #ifdef __cplusplus
 extern "C" {
diff --git a/dnn/training_tf2/dump_rdovae.py b/dnn/training_tf2/dump_rdovae.py
index a401487ca8e0e720bc497b50be895bd663a6fbe2..300eda3f0b9f15a4a503dde4e5405793d976b0aa 100644
--- a/dnn/training_tf2/dump_rdovae.py
+++ b/dnn/training_tf2/dump_rdovae.py
@@ -25,8 +25,6 @@ f"""
 #ifndef {header_guard}
 #define {header_guard}
 
-#include "nnet.h"
-
 """
     )
 
@@ -119,6 +117,14 @@ if __name__ == "__main__":
     start_header(header_fid, "dred_rdovae_enc_data.h")
     start_source(source_fid, "dred_rdovae_enc_data.h", os.path.basename(args.weights))
 
+    header_fid.write(
+f"""
+#include "dred_rdovae_constants.h"
+
+#include "nnet.h"
+"""
+    )
+
     # dump GRUs
     max_rnn_neurons_enc = max(
         [
@@ -143,7 +149,6 @@ if __name__ == "__main__":
     # some global constants
     header_fid.write(
 f"""
-#include "dred_rdovae_constants.h"
 
 #define DRED_ENC_MAX_RNN_NEURONS {max_rnn_neurons_enc}
 
@@ -206,7 +211,13 @@ f"""
     start_header(header_fid, "dred_rdovae_dec_data.h")
     start_source(source_fid, "dred_rdovae_dec_data.h", os.path.basename(args.weights))
 
+    header_fid.write(
+f"""
+#include "dred_rdovae_constants.h"
 
+#include "nnet.h"
+"""
+    )
 
 
     # dump GRUs
@@ -225,7 +236,6 @@ f"""
     # some global constants
     header_fid.write(
 f"""
-#include "dred_rdovae_constants.h"
 
 #define DRED_DEC_MAX_RNN_NEURONS {max_rnn_neurons_dec}
 
@@ -248,6 +258,8 @@ f"""
 
 #define DRED_LATENT_DIM {args.latent_dim}
 
+#define DRED_STATE_DIM {24}
+
 #define DRED_NUM_QUANTIZATION_LEVELS {qembedding.weights[0].shape[0]}
 
 #define DRED_MAX_RNN_NEURONS {max(max_rnn_neurons_enc, max_rnn_neurons_dec)}