blob: 7d5dff7b14a33f551fc0a5a9e19434cda5d6353b
1 | /*****************************************************************************/ |
2 | /* BroadVoice(R)32 (BV32) Floating-Point ANSI-C Source Code */ |
3 | /* Revision Date: October 5, 2012 */ |
4 | /* Version 1.2 */ |
5 | /*****************************************************************************/ |
6 | |
7 | |
8 | /***************************************************************************** |
9 | bv32strct.h : BV32 data structures |
10 | |
11 | $Log$ |
12 | ******************************************************************************/ |
13 | |
14 | #ifndef BV32STRCT_H |
15 | #define BV32STRCT_H |
16 | |
17 | struct BV32_Decoder_State { |
18 | Float stsym[LPCO]; |
19 | Float ltsym[LTMOFF]; |
20 | Float lsppm[LPCO*LSPPORDER]; |
21 | Float lgpm[LGPORDER]; |
22 | Float lsplast[LPCO]; |
23 | Float dezfm[PFO]; |
24 | Float depfm[PFO]; |
25 | short cfecount; |
26 | UWord32 idum; |
27 | Float scplcg; |
28 | Float per; |
29 | Float E; |
30 | Float atplc[LPCO+1]; |
31 | short pp_last; |
32 | Float prevlg[2]; |
33 | Float lgq_last; |
34 | Float bq_last[3]; |
35 | Float lmax; /* level-adaptation */ |
36 | Float lmin; |
37 | Float lmean; |
38 | Float x1; |
39 | Float level; |
40 | short nclglim; |
41 | short lctimer; |
42 | }; |
43 | |
44 | struct BV32_Encoder_State { |
45 | Float x[XOFF]; |
46 | Float xwd[XDOFF]; /* memory of DECF:1 decimated version of xw() */ |
47 | Float dq[XOFF]; /* quantized short-term pred error */ |
48 | Float dfm[DFO]; /* decimated xwd() filter memory */ |
49 | Float stpem[LPCO]; /* ST Pred. Error filter memory, low-band */ |
50 | Float stwpm[LPCO]; /* ST Weighting all-Pole Memory, low-band */ |
51 | Float stnfm[LPCO]; /* ST Noise Feedback filter Memory, Lowband */ |
52 | Float stsym[LPCO]; /* ST SYnthesis filter Memory, Lowband */ |
53 | Float ltsym[MAXPP1+FRSZ]; /* long-term synthesis filter memory */ |
54 | Float ltnfm[MAXPP1+FRSZ]; /* long-term noise feedback filter memory */ |
55 | Float lsppm[LPCO*LSPPORDER]; /* LSP Predictor Memory */ |
56 | Float allast[LPCO+1]; |
57 | Float lsplast[LPCO]; |
58 | Float lgpm[LGPORDER]; |
59 | Float hpfzm[HPO]; |
60 | Float hpfpm[HPO]; |
61 | Float prevlg[2]; |
62 | Float lmax; /* level-adaptation */ |
63 | Float lmin; |
64 | Float lmean; |
65 | Float x1; |
66 | Float level; |
67 | int cpplast; /* pitch period pf the previous frame */ |
68 | }; |
69 | |
70 | struct BV32_Bit_Stream { |
71 | short lspidx[3]; |
72 | short ppidx; /* 9 bit */ |
73 | short bqidx; |
74 | short gidx[2]; |
75 | short qvidx[NVPSF]; |
76 | }; |
77 | |
78 | #endif /* BV32STRCT_H */ |
79 | |
80 |