2 * Copyright 1992 by Jutta Degener and Carsten Bormann, Technische
3 * Universitaet Berlin. See the accompanying file "COPYRIGHT" for
4 * details. THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.
10 #include <stdio.h> /* for FILE * */
16 typedef struct gsm_state * gsm;
17 typedef short gsm_signal; /* signed 16 bit */
18 typedef unsigned char gsm_byte;
19 typedef gsm_byte gsm_frame[33]; /* 33 * 8 bits */
21 #define GSM_MAGIC 0xD /* 13 kbit/s RPE-LTP */
23 #define GSM_PATCHLEVEL 10
27 #define GSM_OPT_VERBOSE 1
28 #define GSM_OPT_FAST 2
29 #define GSM_OPT_LTP_CUT 3
30 #define GSM_OPT_WAV49 4
31 #define GSM_OPT_FRAME_INDEX 5
32 #define GSM_OPT_FRAME_CHAIN 6
34 gsm gsm_create (void);
36 /* Added for libsndfile : May 6, 2002 */
39 void gsm_destroy (gsm);
41 int gsm_print (FILE *, gsm, gsm_byte *);
42 int gsm_option (gsm, int, int *);
44 void gsm_encode (gsm, gsm_signal *, gsm_byte *);
45 int gsm_decode (gsm, gsm_byte *, gsm_signal *);
47 int gsm_explode (gsm, gsm_byte *, gsm_signal *);
48 void gsm_implode (gsm, gsm_signal *, gsm_byte *);
52 ** Do not edit or modify anything in this comment block.
53 ** The arch-tag line is a file identity tag for the GNU Arch
54 ** revision control system.
56 ** arch-tag: 8cfc7698-5433-4b6f-aeca-967c6fda4dec