diff options
| author | Mike Melanson <mike@multimedia.cx> | 2002-10-12 19:12:49 +0000 |
|---|---|---|
| committer | Mike Melanson <mike@multimedia.cx> | 2002-10-12 19:12:49 +0000 |
| commit | 6ee61bb4ea8022317eeb63751265c0e5744aeda1 (patch) | |
| tree | 2fd5a8018f5ef999f0f35d428bf568c7e37d5509 /src/libxineadec/gsm610/gsm.h | |
| parent | 06111f4d32c4dbfbc1186f1a75aa9352a5b037da (diff) | |
| download | xine-lib-6ee61bb4ea8022317eeb63751265c0e5744aeda1.tar.gz xine-lib-6ee61bb4ea8022317eeb63751265c0e5744aeda1.tar.bz2 | |
added GSM 6.10 audio decoder
CVS patchset: 2817
CVS date: 2002/10/12 19:12:49
Diffstat (limited to 'src/libxineadec/gsm610/gsm.h')
| -rw-r--r-- | src/libxineadec/gsm610/gsm.h | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/src/libxineadec/gsm610/gsm.h b/src/libxineadec/gsm610/gsm.h new file mode 100644 index 000000000..34ad8f7a5 --- /dev/null +++ b/src/libxineadec/gsm610/gsm.h @@ -0,0 +1,71 @@ +/* + * Copyright 1992 by Jutta Degener and Carsten Bormann, Technische + * Universitaet Berlin. See the accompanying file "COPYRIGHT" for + * details. THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE. + */ + +/*$Header: /nfshome/cvs/xine-lib/src/libxineadec/gsm610/gsm.h,v 1.1 2002/10/12 19:12:49 tmmm Exp $*/ + +#ifndef GSM_H +#define GSM_H + +#ifdef __cplusplus +# define NeedFunctionPrototypes 1 +#endif + +#if __STDC__ +# define NeedFunctionPrototypes 1 +#endif + +#ifdef _NO_PROTO +# undef NeedFunctionPrototypes +#endif + +#ifdef NeedFunctionPrototypes +# include <stdio.h> /* for FILE * */ +#endif + +#undef GSM_P +#if NeedFunctionPrototypes +# define GSM_P( protos ) protos +#else +# define GSM_P( protos ) ( /* protos */ ) +#endif + +/* + * Interface + */ + +typedef struct gsm_state * gsm; +typedef short gsm_signal; /* signed 16 bit */ +typedef unsigned char gsm_byte; +typedef gsm_byte gsm_frame[33]; /* 33 * 8 bits */ + +#define GSM_MAGIC 0xD /* 13 kbit/s RPE-LTP */ + +#define GSM_PATCHLEVEL 10 +#define GSM_MINOR 0 +#define GSM_MAJOR 1 + +#define GSM_OPT_VERBOSE 1 +#define GSM_OPT_FAST 2 +#define GSM_OPT_LTP_CUT 3 +#define GSM_OPT_WAV49 4 +#define GSM_OPT_FRAME_INDEX 5 +#define GSM_OPT_FRAME_CHAIN 6 + +extern gsm gsm_create GSM_P((void)); +extern void gsm_destroy GSM_P((gsm)); + +extern int gsm_print GSM_P((FILE *, gsm, gsm_byte *)); +extern int gsm_option GSM_P((gsm, int, int *)); + +extern void gsm_encode GSM_P((gsm, gsm_signal *, gsm_byte *)); +extern int gsm_decode GSM_P((gsm, gsm_byte *, gsm_signal *)); + +extern int gsm_explode GSM_P((gsm, gsm_byte *, gsm_signal *)); +extern void gsm_implode GSM_P((gsm, gsm_signal *, gsm_byte *)); + +#undef GSM_P + +#endif /* GSM_H */ |
