7d275f8663cb3f04290b180841993a72d08771a0
[speexdsp.git] / libspeex / speex.h
1 #ifndef SPEEX_H
2 #define SPEEX_H
3
4
5 typedef struct EncState {
6    int    frameSize;      /* Size of frames */
7    int    subframeSize;   /* Size of sub-frames */
8    int    nbSubframes;    /* Number of sub-frames */
9    int    lpcSize;        /* LPC order */
10    int    bufSize;        /* Buffer size */
11    float *inBuf;          /* Input buffer */
12    float *window;         /* Temporary (Hanning) window */
13    int    windowSize;     /* Window length */
14    float *buf2;           /* 2nd temporary buffer */
15    float *autocorr;       /* auto-correlation */
16    float *lagWindow;      /* Window applied to auto-correlation */
17    float *lpc;            /* LPCs for current frame */
18    float *lsp;            /* LSPs for current frame */
19    float *old_lsp;        /* LSPs for previous frame */
20    float *rc;             /* Reflection coefficients */
21    int    first;          /* Is this the first frame? */
22 } EncState;
23
24 typedef struct DecState {
25 } DecState;
26
27 void encoder_init(EncState *st);
28 void encoder_destroy(EncState *st);
29 void encode(EncState *st, float *in, int *outSize, void *bits);
30
31 void decoder_init(DecState *st);
32 void decoder_destroy(DecState *st);
33 void decode(DecState *st, float *bits, float *out);
34
35
36
37 #endif