tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

aecm_defines.h (3950B)


      1 /*
      2 *  Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
      3 *
      4 *  Use of this source code is governed by a BSD-style license
      5 *  that can be found in the LICENSE file in the root of the source
      6 *  tree. An additional intellectual property rights grant can be found
      7 *  in the file PATENTS.  All contributing project authors may
      8 *  be found in the AUTHORS file in the root of the source tree.
      9 */
     10 
     11 #ifndef MODULES_AUDIO_PROCESSING_AECM_AECM_DEFINES_H_
     12 #define MODULES_AUDIO_PROCESSING_AECM_AECM_DEFINES_H_
     13 
     14 #define AECM_DYNAMIC_Q /* Turn on/off dynamic Q-domain. */
     15 
     16 /* Algorithm parameters */
     17 #define FRAME_LEN 80 /* Total frame length, 10 ms. */
     18 
     19 #define PART_LEN 64      /* Length of partition. */
     20 #define PART_LEN_SHIFT 7 /* Length of (PART_LEN * 2) in base 2. */
     21 
     22 #define PART_LEN1 (PART_LEN + 1)  /* Unique fft coefficients. */
     23 #define PART_LEN2 (PART_LEN << 1) /* Length of partition * 2. */
     24 #define PART_LEN4 (PART_LEN << 2) /* Length of partition * 4. */
     25 #define FAR_BUF_LEN PART_LEN4     /* Length of buffers. */
     26 #define MAX_DELAY 100
     27 
     28 /* Counter parameters */
     29 #define CONV_LEN 512              /* Convergence length used at startup. */
     30 #define CONV_LEN2 (CONV_LEN << 1) /* Used at startup. */
     31 
     32 /* Energy parameters */
     33 #define MAX_BUF_LEN 64            /* History length of energy signals. */
     34 #define FAR_ENERGY_MIN 1025       /* Lowest Far energy level: At least 2 */
     35                                  /* in energy. */
     36 #define FAR_ENERGY_DIFF 929       /* Allowed difference between max */
     37                                  /* and min. */
     38 #define ENERGY_DEV_OFFSET 0       /* The energy error offset in Q8. */
     39 #define ENERGY_DEV_TOL 400        /* The energy estimation tolerance (Q8). */
     40 #define FAR_ENERGY_VAD_REGION 230 /* Far VAD tolerance region. */
     41 
     42 /* Stepsize parameters */
     43 #define MU_MIN 10 /* Min stepsize 2^-MU_MIN (far end energy */
     44                  /* dependent). */
     45 #define MU_MAX 1  /* Max stepsize 2^-MU_MAX (far end energy */
     46                  /* dependent). */
     47 #define MU_DIFF 9 /* MU_MIN - MU_MAX */
     48 
     49 /* Channel parameters */
     50 #define MIN_MSE_COUNT 20 /* Min number of consecutive blocks with enough */
     51                         /* far end energy to compare channel estimates. */
     52 #define MIN_MSE_DIFF 29  /* The ratio between adapted and stored channel to */
     53                         /* accept a new storage (0.8 in Q-MSE_RESOLUTION). */
     54 #define MSE_RESOLUTION 5 /* MSE parameter resolution. */
     55 #define RESOLUTION_CHANNEL16 12 /* W16 Channel in Q-RESOLUTION_CHANNEL16. */
     56 #define RESOLUTION_CHANNEL32 28 /* W32 Channel in Q-RESOLUTION_CHANNEL. */
     57 #define CHANNEL_VAD 16          /* Minimum energy in frequency band */
     58                                /* to update channel. */
     59 
     60 /* Suppression gain parameters: SUPGAIN parameters in Q-(RESOLUTION_SUPGAIN). */
     61 #define RESOLUTION_SUPGAIN 8 /* Channel in Q-(RESOLUTION_SUPGAIN). */
     62 #define SUPGAIN_DEFAULT (1 << RESOLUTION_SUPGAIN) /* Default. */
     63 #define SUPGAIN_ERROR_PARAM_A 3072            /* Estimation error parameter */
     64                                              /* (Maximum gain) (8 in Q8). */
     65 #define SUPGAIN_ERROR_PARAM_B 1536            /* Estimation error parameter */
     66                                              /* (Gain before going down). */
     67 #define SUPGAIN_ERROR_PARAM_D SUPGAIN_DEFAULT /* Estimation error parameter */
     68 /* (Should be the same as Default) (1 in Q8). */
     69 #define SUPGAIN_EPC_DT 200 /* SUPGAIN_ERROR_PARAM_C * ENERGY_DEV_TOL */
     70 
     71 /* Defines for "check delay estimation" */
     72 #define CORR_WIDTH 31 /* Number of samples to correlate over. */
     73 #define CORR_MAX 16   /* Maximum correlation offset. */
     74 #define CORR_MAX_BUF 63
     75 #define CORR_DEV 4
     76 #define CORR_MAX_LEVEL 20
     77 #define CORR_MAX_LOW 4
     78 #define CORR_BUF_LEN (CORR_MAX << 1) + 1
     79 /* Note that CORR_WIDTH + 2*CORR_MAX <= MAX_BUF_LEN. */
     80 
     81 #define ONE_Q14 (1 << 14)
     82 
     83 /* NLP defines */
     84 #define NLP_COMP_LOW 3277     /* 0.2 in Q14 */
     85 #define NLP_COMP_HIGH ONE_Q14 /* 1 in Q14 */
     86 
     87 #endif