blob: 07369a39e0a22e42d3f5f2800fcc9649c8b99d5a [file] [log] [blame]
niklase@google.com470e71d2011-07-07 08:21:25 +00001/*
2 * Copyright (c) 2011 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/******************************************************************
12
13 iLBC Speech Coder ANSI-C Source Code
14
15 constants.h
16
17******************************************************************/
18
Mirko Bonadei92ea95e2017-09-15 06:47:31 +020019#ifndef MODULES_AUDIO_CODING_CODECS_ILBC_MAIN_SOURCE_CONSTANTS_H_
20#define MODULES_AUDIO_CODING_CODECS_ILBC_MAIN_SOURCE_CONSTANTS_H_
niklase@google.com470e71d2011-07-07 08:21:25 +000021
Mirko Bonadei06c2aa92018-02-01 15:11:41 +010022#include "modules/audio_coding/codecs/ilbc/defines.h"
niklase@google.com470e71d2011-07-07 08:21:25 +000023
24/* high pass filters */
25
pbos@webrtc.org0946a562013-04-09 00:28:06 +000026extern const int16_t WebRtcIlbcfix_kHpInCoefs[];
27extern const int16_t WebRtcIlbcfix_kHpOutCoefs[];
niklase@google.com470e71d2011-07-07 08:21:25 +000028
29/* Window for start state decision */
pbos@webrtc.org0946a562013-04-09 00:28:06 +000030extern const int16_t WebRtcIlbcfix_kStartSequenceEnrgWin[];
niklase@google.com470e71d2011-07-07 08:21:25 +000031
32/* low pass filter used for downsampling */
pbos@webrtc.org0946a562013-04-09 00:28:06 +000033extern const int16_t WebRtcIlbcfix_kLpFiltCoefs[];
niklase@google.com470e71d2011-07-07 08:21:25 +000034
35/* LPC analysis and quantization */
36
pbos@webrtc.org0946a562013-04-09 00:28:06 +000037extern const int16_t WebRtcIlbcfix_kLpcWin[];
38extern const int16_t WebRtcIlbcfix_kLpcAsymWin[];
39extern const int32_t WebRtcIlbcfix_kLpcLagWin[];
40extern const int16_t WebRtcIlbcfix_kLpcChirpSyntDenum[];
41extern const int16_t WebRtcIlbcfix_kLpcChirpWeightDenum[];
42extern const int16_t WebRtcIlbcfix_kLsfDimCb[];
43extern const int16_t WebRtcIlbcfix_kLsfSizeCb[];
44extern const int16_t WebRtcIlbcfix_kLsfCb[];
45extern const int16_t WebRtcIlbcfix_kLsfWeight20ms[];
46extern const int16_t WebRtcIlbcfix_kLsfWeight30ms[];
47extern const int16_t WebRtcIlbcfix_kLsfMean[];
48extern const int16_t WebRtcIlbcfix_kLspMean[];
49extern const int16_t WebRtcIlbcfix_kCos[];
50extern const int16_t WebRtcIlbcfix_kCosDerivative[];
51extern const int16_t WebRtcIlbcfix_kCosGrid[];
52extern const int16_t WebRtcIlbcfix_kAcosDerivative[];
niklase@google.com470e71d2011-07-07 08:21:25 +000053
54/* state quantization tables */
55
pbos@webrtc.org0946a562013-04-09 00:28:06 +000056extern const int16_t WebRtcIlbcfix_kStateSq3[];
57extern const int32_t WebRtcIlbcfix_kChooseFrgQuant[];
58extern const int16_t WebRtcIlbcfix_kScale[];
59extern const int16_t WebRtcIlbcfix_kFrgQuantMod[];
niklase@google.com470e71d2011-07-07 08:21:25 +000060
61/* Ranges for search and filters at different subframes */
62
Peter Kastingdce40cf2015-08-24 14:52:23 -070063extern const size_t WebRtcIlbcfix_kSearchRange[5][CB_NSTAGES];
64extern const size_t WebRtcIlbcfix_kFilterRange[];
niklase@google.com470e71d2011-07-07 08:21:25 +000065
66/* gain quantization tables */
67
pbos@webrtc.org0946a562013-04-09 00:28:06 +000068extern const int16_t WebRtcIlbcfix_kGainSq3[];
69extern const int16_t WebRtcIlbcfix_kGainSq4[];
70extern const int16_t WebRtcIlbcfix_kGainSq5[];
71extern const int16_t WebRtcIlbcfix_kGainSq5Sq[];
72extern const int16_t* const WebRtcIlbcfix_kGain[];
niklase@google.com470e71d2011-07-07 08:21:25 +000073
74/* adaptive codebook definitions */
75
pbos@webrtc.org0946a562013-04-09 00:28:06 +000076extern const int16_t WebRtcIlbcfix_kCbFiltersRev[];
77extern const int16_t WebRtcIlbcfix_kAlpha[];
niklase@google.com470e71d2011-07-07 08:21:25 +000078
79/* enhancer definitions */
80
Yves Gerey665174f2018-06-19 15:03:05 +020081extern const int16_t WebRtcIlbcfix_kEnhPolyPhaser[ENH_UPS0]
82 [ENH_FLO_MULT2_PLUS1];
pbos@webrtc.org0946a562013-04-09 00:28:06 +000083extern const int16_t WebRtcIlbcfix_kEnhWt[];
Peter Kasting1380e262015-08-28 17:31:03 -070084extern const size_t WebRtcIlbcfix_kEnhPlocs[];
niklase@google.com470e71d2011-07-07 08:21:25 +000085
86/* PLC tables */
87
pbos@webrtc.org0946a562013-04-09 00:28:06 +000088extern const int16_t WebRtcIlbcfix_kPlcPerSqr[];
89extern const int16_t WebRtcIlbcfix_kPlcPitchFact[];
90extern const int16_t WebRtcIlbcfix_kPlcPfSlope[];
niklase@google.com470e71d2011-07-07 08:21:25 +000091
92#endif