changeset 42:ba044871c9dd

libgsmefr: beginning of encoder and decoder state structures
author Mychaela Falconia <falcon@freecalypso.org>
date Fri, 25 Nov 2022 01:43:16 +0000
parents 37e39cad5838
children b9ade9d64e0e
files libgsmefr/dec_state.h libgsmefr/enc_state.h
diffstat 2 files changed, 45 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/libgsmefr/dec_state.h	Fri Nov 25 01:43:16 2022 +0000
@@ -0,0 +1,11 @@
+/*
+ * In this header file we define our decoder state structure.
+ * This decoder state structure is internal to libgsmefr,
+ * NOT part of our external public interface!
+ */
+
+struct EFR_decoder_state {
+	/* from agc.c */
+	Word16 past_gain;
+	/* to be continued */
+};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/libgsmefr/enc_state.h	Fri Nov 25 01:43:16 2022 +0000
@@ -0,0 +1,34 @@
+/*
+ * In this header file we define our encoder state structure.
+ * This encoder state structure is internal to libgsmefr,
+ * NOT part of our external public interface!
+ */
+
+struct EFR_encoder_state {
+	/* from coder.c */
+	Word16 dtx_mode;
+	/* from cod_12k2.c */
+	Word16 old_speech[L_TOTAL];
+	Word16 old_wsp[L_FRAME + PIT_MAX];
+	Word16 old_exc[L_FRAME + PIT_MAX + L_INTERPOL];
+	Word16 ai_zero[L_SUBFR + MP1];
+	Word16 hvec[L_SUBFR * 2];
+	Word16 lsp_old[M];
+	Word16 lsp_old_q[M];
+	Word16 mem_syn[M];
+	Word16 mem_w0[M];
+	Word16 mem_w[M];
+	Word16 mem_err[M + L_SUBFR];
+	/* from levinson.c */
+	Word16 old_A[M + 1];
+	/* from pre_proc.c */
+	struct preproc_state {
+		Word16 y2_hi;
+		Word16 y2_lo;
+		Word16 y1_hi;
+		Word16 y1_lo;
+		Word16 x0;
+		Word16 x1;
+	} pre_proc;
+	/* to be continued */
+};