FreeCalypso > hg > gsm-codec-lib
diff libgsmfrp/gsm_fr_preproc.h @ 1:6780b23654bd
libgsmfrp: starting with the silence frame
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sat, 19 Nov 2022 04:04:01 +0000 |
parents | |
children | 2b5770c715ee |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/libgsmfrp/gsm_fr_preproc.h Sat Nov 19 04:04:01 2022 +0000 @@ -0,0 +1,32 @@ +/* + * This header file is the external public interface to libgsmfrp; + * it should be installed in the same system include directory + * as <gsm.h> from libgsm, on which we depend. + */ + +#ifndef __GSM_FR_PREPROC_H +#define __GSM_FR_PREPROC_H + +#include <gsm.h> + +struct gsmfr_preproc_state; /* opaque to external users */ + +extern struct gsmfr_preproc_state *gsmfr_preproc_create(void); +/* use standard free() call to free it afterward */ + +/* reset state to initial */ +extern void gsmfr_preproc_reset(struct gsmfr_preproc_state *state); + +/* main processing functions */ +extern void gsmfr_preproc_good_frame(struct gsmfr_preproc_state *state, + gsm_byte *frame); +extern void gsmfr_preproc_bfi(struct gsmfr_preproc_state *state, int taf, + gsm_byte *frame_out); + +/* utility function */ +extern int gsmfr_preproc_sid_classify(const gsm_frame *frame); + +/* utility datum */ +extern const gsm_frame gsmfr_preproc_silence_frame; + +#endif /* include guard */