summaryrefslogtreecommitdiff
path: root/rcaudio/bv32strct.h (plain)
blob: cdfc66c041d3a7988fca7e778c6796949a2056ef
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/* Copyright 2000-2012 Broadcom Corporation */
9/* */
10/* This software is provided under the GNU Lesser General Public License, */
11/* version 2.1, as published by the Free Software Foundation ("LGPL"). */
12/* This program is distributed in the hope that it will be useful, but */
13/* WITHOUT ANY SUPPORT OR WARRANTY; without even the implied warranty of */
14/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the LGPL for */
15/* more details. A copy of the LGPL is available at */
16/* http://www.broadcom.com/licenses/LGPLv2.1.php, */
17/* or by writing to the Free Software Foundation, Inc., */
18/* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
19/*****************************************************************************/
20
21
22/*****************************************************************************
23 bv32strct.h : BV32 data structures
24
25 $Log$
26******************************************************************************/
27
28#ifndef BV32STRCT_H
29#define BV32STRCT_H
30
31struct BV32_Decoder_State {
32Float stsym[LPCO];
33Float ltsym[LTMOFF];
34Float lsppm[LPCO*LSPPORDER];
35Float lgpm[LGPORDER];
36Float lsplast[LPCO];
37Float dezfm[PFO];
38Float depfm[PFO];
39short cfecount;
40UWord32 idum;
41Float scplcg;
42Float per;
43Float E;
44Float atplc[LPCO+1];
45short pp_last;
46Float prevlg[2];
47Float lgq_last;
48Float bq_last[3];
49Float lmax; /* level-adaptation */
50Float lmin;
51Float lmean;
52Float x1;
53Float level;
54short nclglim;
55short lctimer;
56};
57
58struct BV32_Encoder_State {
59Float x[XOFF];
60Float xwd[XDOFF]; /* memory of DECF:1 decimated version of xw() */
61Float dq[XOFF]; /* quantized short-term pred error */
62Float dfm[DFO]; /* decimated xwd() filter memory */
63Float stpem[LPCO]; /* ST Pred. Error filter memory, low-band */
64Float stwpm[LPCO]; /* ST Weighting all-Pole Memory, low-band */
65Float stnfm[LPCO]; /* ST Noise Feedback filter Memory, Lowband */
66Float stsym[LPCO]; /* ST SYnthesis filter Memory, Lowband */
67Float ltsym[MAXPP1+FRSZ]; /* long-term synthesis filter memory */
68Float ltnfm[MAXPP1+FRSZ]; /* long-term noise feedback filter memory */
69Float lsppm[LPCO*LSPPORDER]; /* LSP Predictor Memory */
70Float allast[LPCO+1];
71Float lsplast[LPCO];
72Float lgpm[LGPORDER];
73Float hpfzm[HPO];
74Float hpfpm[HPO];
75Float prevlg[2];
76Float lmax; /* level-adaptation */
77Float lmin;
78Float lmean;
79Float x1;
80Float level;
81int cpplast; /* pitch period pf the previous frame */
82};
83
84struct BV32_Bit_Stream {
85short lspidx[3];
86short ppidx; /* 9 bit */
87short bqidx;
88short gidx[2];
89short qvidx[NVPSF];
90};
91
92#endif /* BV32STRCT_H */
93
94