view libgsmefr/lag_wind.tab @ 605:63f774192906

gsmhr_decoder_twts002_in(): set BFI=1 SID=1 for invalid SID When a received TW-TS-002 RTP payload indicates invalid SID, which of the 3 possible BFI/SID combinations should we pass to our internal ETSI-based speech decoder or TFO engine? Our original code passed BFI=0 SID=1, but upon further reflection, BFI=1 SID=1 is a better choice. In the corner case where received invalid SID is fed to a full decoder in homed state, setting BFI=1 allows that decoder to emit zeros on PCM and stay homed, instead of launching into full decoding.
author Mychaela Falconia <falcon@freecalypso.org>
date Thu, 04 Dec 2025 21:01:46 +0000
parents 37e39cad5838
children
line wrap: on
line source

/*-----------------------------------------------------*
 | Table of lag_window for autocorrelation.            |
 | noise floor = 1.0001   = (0.9999  on r[1] ..r[10])  |
 | Bandwitdh expansion = 60 Hz                         |
 |                                                     |
 |                                                     |
 | lag_wind[0] =  1.00000000    (not stored)           |
 | lag_wind[1] =  0.99879038                           |
 | lag_wind[2] =  0.99546897                           |
 | lag_wind[3] =  0.98995781                           |
 | lag_wind[4] =  0.98229337                           |
 | lag_wind[5] =  0.97252619                           |
 | lag_wind[6] =  0.96072036                           |
 | lag_wind[7] =  0.94695264                           |
 | lag_wind[8] =  0.93131179                           |
 | lag_wind[9] =  0.91389757                           |
 | lag_wind[10]=  0.89481968                           |
 -----------------------------------------------------*/

static const Word16 lag_h[10] =
{
    32728,
    32619,
    32438,
    32187,
    31867,
    31480,
    31029,
    30517,
    29946,
    29321
};

static const Word16 lag_l[10] =
{
    11904,
    17280,
    30720,
    25856,
    24192,
    28992,
    24384,
    7360,
    19520,
    14784
};