Home | History | Annotate | Download | only in inc
      1 /*
      2  ** Copyright 2003-2010, VisualOn, Inc.
      3  **
      4  ** Licensed under the Apache License, Version 2.0 (the "License");
      5  ** you may not use this file except in compliance with the License.
      6  ** You may obtain a copy of the License at
      7  **
      8  **     http://www.apache.org/licenses/LICENSE-2.0
      9  **
     10  ** Unless required by applicable law or agreed to in writing, software
     11  ** distributed under the License is distributed on an "AS IS" BASIS,
     12  ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     13  ** See the License for the specific language governing permissions and
     14  ** limitations under the License.
     15  */
     16 /*******************************************************************************
     17 	File:		adj_thr_data.h
     18 
     19 	Content:	Threshold compensation parameter
     20 
     21 *******************************************************************************/
     22 
     23 #ifndef __ADJ_THR_DATA_H
     24 #define __ADJ_THR_DATA_H
     25 
     26 #include "typedef.h"
     27 #include "psy_const.h"
     28 #include "line_pe.h"
     29 
     30 typedef struct {
     31    Word16 clipSaveLow, clipSaveHigh;
     32    Word16 minBitSave, maxBitSave;
     33    Word16 clipSpendLow, clipSpendHigh;
     34    Word16 minBitSpend, maxBitSpend;
     35 } BRES_PARAM;
     36 
     37 typedef struct {
     38    UWord8 modifyMinSnr;
     39    Word16 startSfbL, startSfbS;
     40 } AH_PARAM;
     41 
     42 typedef struct {
     43   Word32 maxRed;
     44   Word32 startRatio, maxRatio;
     45   Word32 redRatioFac;
     46   Word32 redOffs;
     47 } MINSNR_ADAPT_PARAM;
     48 
     49 typedef struct {
     50   /* parameters for bitreservoir control */
     51   Word16 peMin, peMax;
     52   /* constant offset to pe               */
     53   Word16  peOffset;
     54   /* avoid hole parameters               */
     55   AH_PARAM ahParam;
     56   /* paramters for adaptation of minSnr */
     57   MINSNR_ADAPT_PARAM minSnrAdaptParam;
     58   /* values for correction of pe */
     59   Word16 peLast;
     60   Word16 dynBitsLast;
     61   Word16 peCorrectionFactor;
     62 } ATS_ELEMENT;
     63 
     64 typedef struct {
     65   BRES_PARAM   bresParamLong, bresParamShort; /* Word16 size: 2*8 */
     66   ATS_ELEMENT  adjThrStateElem;               /* Word16 size: 19 */
     67 } ADJ_THR_STATE;
     68 
     69 #endif
     70