bv16strct.h

00001 /*****************************************************************************/
00002 /* BroadVoice(R)16 (BV16) Floating-Point ANSI-C Source Code                  */
00003 /* Revision Date: August 19, 2009                                            */
00004 /* Version 1.0                                                               */
00005 /*****************************************************************************/
00006 
00007 /*****************************************************************************/
00008 /* Copyright 2000-2009 Broadcom Corporation                                  */
00009 /*                                                                           */
00010 /* This software is provided under the GNU Lesser General Public License,    */
00011 /* version 2.1, as published by the Free Software Foundation ("LGPL").       */
00012 /* This program is distributed in the hope that it will be useful, but       */
00013 /* WITHOUT ANY SUPPORT OR WARRANTY; without even the implied warranty of     */
00014 /* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the LGPL for     */
00015 /* more details.  A copy of the LGPL is available at                         */
00016 /* http://www.broadcom.com/licenses/LGPLv2.1.php,                            */
00017 /* or by writing to the Free Software Foundation, Inc.,                      */
00018 /* 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.                 */
00019 /*****************************************************************************/
00020 
00021 
00022 /*****************************************************************************
00023   bv16strct.h : BV16 data structures
00024 
00025   $Log: bv16strct.h,v $
00026   Revision 1.1.1.1  2009/11/19 12:10:48  steveu
00027   Start from Broadcom's code
00028 
00029   Revision 1.1.1.1  2009/11/17 14:06:02  steveu
00030   start
00031 
00032 ******************************************************************************/
00033 
00034 #include "typedef.h"
00035 #include "bv16cnst.h"
00036 #include "bvcommon.h"
00037 
00038 #if !defined(_BV16STRCT_H_)
00039 #define  _BV16STRCT_H_
00040 
00041 struct bv16_decode_state_s
00042 {
00043     Float stsym[LPCO];
00044     Float ltsym[LTMOFF];
00045     Float lsppm[LPCO*LSPPORDER];
00046     Float lgpm[LGPORDER];
00047     Float lsplast[LPCO];
00048     Float prevlg[2];
00049     Float lmax;                     /* level-adaptation */
00050     Float lmin;
00051     Float lmean;
00052     Float x1;
00053     Float level;
00054     int16_t pp_last;
00055     int16_t ngfae;
00056     Float bq_last[3];
00057     int16_t nggalgc;
00058     Float estl_alpha_min;
00059     int16_t cfecount;
00060     uint32_t idum;
00061     Float E;
00062     Float per;
00063     Float atplc[LPCO + 1];
00064     Float ma_a;
00065     Float b_prv[2];
00066     Float xq[XQOFF];
00067     int pp_prv;
00068 };
00069 
00070 struct bv16_encode_state_s
00071 {
00072     Float x[XOFF];                  /* 8kHz down-sampled signal memory */
00073     Float xwd[XDOFF];               /* memory of DECF:1 decimated version of xw() */
00074     Float dq[XOFF];                 /* quantized short-term pred error */
00075     Float dfm[DFO];                 /* decimated xwd() filter memory */
00076     Float stpem[LPCO];              /* ST Pred. Error filter memory */
00077     Float stwpm[LPCO];              /* ST Weighting all-Pole Memory */
00078     Float stsym[LPCO];              /* ST Synthesis filter Memory */
00079     Float ltsym[MAXPP1 + FRSZ];     /* long-term synthesis filter memory */
00080     Float ltnfm[MAXPP1 + FRSZ];     /* long-term noise feedback filter memory */
00081     Float lsplast[LPCO];
00082     Float lsppm[LPCO*LSPPORDER];    /* LSP Predictor Memory */
00083     Float lgpm[LGPORDER];
00084     Float hpfzm[HPO];
00085     Float hpfpm[HPO];
00086     Float prevlg[2];
00087     Float lmax;                     /* level-adaptation */
00088     Float lmin;
00089     Float lmean;
00090     Float x1;
00091     Float level;
00092     int cpplast;                    /* pitch period pf the previous frame */
00093     Float old_A[LPCO + 1];
00094     Float stnfz[NSTORDER];
00095     Float stnfp[NSTORDER];
00096 };
00097 
00098 struct BV16_Bit_Stream
00099 {
00100     int16_t lspidx[2];
00101     int16_t ppidx;
00102     int16_t bqidx;
00103     int16_t gidx;
00104     int16_t qvidx[FRSZ/VDIM];
00105 };
00106 
00107 #endif /* BV16STRCT_H */

Generated on 15 Mar 2017 for libg722_1 by  doxygen 1.6.1