xref: /third_party/ffmpeg/libavcodec/opustab.h (revision cabdff1a)
1cabdff1aSopenharmony_ci/*
2cabdff1aSopenharmony_ci * Copyright (c) 2012 Andrew D'Addesio
3cabdff1aSopenharmony_ci * Copyright (c) 2013-2014 Mozilla Corporation
4cabdff1aSopenharmony_ci * Copyright (c) 2016 Rostislav Pehlivanov <atomnuker@gmail.com>
5cabdff1aSopenharmony_ci *
6cabdff1aSopenharmony_ci * This file is part of FFmpeg.
7cabdff1aSopenharmony_ci *
8cabdff1aSopenharmony_ci * FFmpeg is free software; you can redistribute it and/or
9cabdff1aSopenharmony_ci * modify it under the terms of the GNU Lesser General Public
10cabdff1aSopenharmony_ci * License as published by the Free Software Foundation; either
11cabdff1aSopenharmony_ci * version 2.1 of the License, or (at your option) any later version.
12cabdff1aSopenharmony_ci *
13cabdff1aSopenharmony_ci * FFmpeg is distributed in the hope that it will be useful,
14cabdff1aSopenharmony_ci * but WITHOUT ANY WARRANTY; without even the implied warranty of
15cabdff1aSopenharmony_ci * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16cabdff1aSopenharmony_ci * Lesser General Public License for more details.
17cabdff1aSopenharmony_ci *
18cabdff1aSopenharmony_ci * You should have received a copy of the GNU Lesser General Public
19cabdff1aSopenharmony_ci * License along with FFmpeg; if not, write to the Free Software
20cabdff1aSopenharmony_ci * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
21cabdff1aSopenharmony_ci */
22cabdff1aSopenharmony_ci
23cabdff1aSopenharmony_ci#ifndef AVCODEC_OPUSTAB_H
24cabdff1aSopenharmony_ci#define AVCODEC_OPUSTAB_H
25cabdff1aSopenharmony_ci
26cabdff1aSopenharmony_ci#include <stdint.h>
27cabdff1aSopenharmony_ci
28cabdff1aSopenharmony_ciextern const uint8_t  ff_celt_band_end[];
29cabdff1aSopenharmony_ci
30cabdff1aSopenharmony_ciextern const uint8_t  ff_opus_default_coupled_streams[];
31cabdff1aSopenharmony_ci
32cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_lbrr_flags_40[];
33cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_lbrr_flags_60[];
34cabdff1aSopenharmony_ci
35cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_stereo_s1[];
36cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_stereo_s2[];
37cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_stereo_s3[];
38cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_mid_only[];
39cabdff1aSopenharmony_ci
40cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_frame_type_inactive[];
41cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_frame_type_active[];
42cabdff1aSopenharmony_ci
43cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_gain_highbits[3][9];
44cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_gain_lowbits[];
45cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_gain_delta[];
46cabdff1aSopenharmony_ci
47cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_lsf_s1[2][2][33];
48cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_lsf_s2[32][10];
49cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_lsf_s2_ext[];
50cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_lsf_interpolation_offset[];
51cabdff1aSopenharmony_ci
52cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_pitch_highbits[];
53cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_pitch_lowbits_nb[];
54cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_pitch_lowbits_mb[];
55cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_pitch_lowbits_wb[];
56cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_pitch_delta[];
57cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_pitch_contour_nb10ms[];
58cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_pitch_contour_nb20ms[];
59cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_pitch_contour_mbwb10ms[];
60cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_pitch_contour_mbwb20ms[];
61cabdff1aSopenharmony_ci
62cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_ltp_filter[];
63cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_ltp_filter0_sel[];
64cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_ltp_filter1_sel[];
65cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_ltp_filter2_sel[];
66cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_ltp_scale_index[];
67cabdff1aSopenharmony_ci
68cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_lcg_seed[];
69cabdff1aSopenharmony_ci
70cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_exc_rate[2][10];
71cabdff1aSopenharmony_ci
72cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_pulse_count[11][19];
73cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_pulse_location[4][168];
74cabdff1aSopenharmony_ci
75cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_excitation_lsb[];
76cabdff1aSopenharmony_ciextern const uint16_t ff_silk_model_excitation_sign[3][2][7][3];
77cabdff1aSopenharmony_ci
78cabdff1aSopenharmony_ciextern const int16_t  ff_silk_stereo_weights[];
79cabdff1aSopenharmony_ci
80cabdff1aSopenharmony_ciextern const uint8_t  ff_silk_lsf_s2_model_sel_nbmb[32][10];
81cabdff1aSopenharmony_ciextern const uint8_t  ff_silk_lsf_s2_model_sel_wb[32][16];
82cabdff1aSopenharmony_ci
83cabdff1aSopenharmony_ciextern const uint8_t  ff_silk_lsf_pred_weights_nbmb[2][9];
84cabdff1aSopenharmony_ciextern const uint8_t  ff_silk_lsf_pred_weights_wb[2][15];
85cabdff1aSopenharmony_ci
86cabdff1aSopenharmony_ciextern const uint8_t  ff_silk_lsf_weight_sel_nbmb[32][9];
87cabdff1aSopenharmony_ciextern const uint8_t  ff_silk_lsf_weight_sel_wb[32][15];
88cabdff1aSopenharmony_ci
89cabdff1aSopenharmony_ciextern const uint8_t  ff_silk_lsf_codebook_nbmb[32][10];
90cabdff1aSopenharmony_ciextern const uint8_t  ff_silk_lsf_codebook_wb[32][16];
91cabdff1aSopenharmony_ci
92cabdff1aSopenharmony_ciextern const uint16_t ff_silk_lsf_min_spacing_nbmb[];
93cabdff1aSopenharmony_ciextern const uint16_t ff_silk_lsf_min_spacing_wb[];
94cabdff1aSopenharmony_ci
95cabdff1aSopenharmony_ciextern const uint8_t  ff_silk_lsf_ordering_nbmb[];
96cabdff1aSopenharmony_ciextern const uint8_t  ff_silk_lsf_ordering_wb[];
97cabdff1aSopenharmony_ci
98cabdff1aSopenharmony_ciextern const int16_t  ff_silk_cosine[];
99cabdff1aSopenharmony_ci
100cabdff1aSopenharmony_ciextern const uint16_t ff_silk_pitch_scale[];
101cabdff1aSopenharmony_ciextern const uint16_t ff_silk_pitch_min_lag[];
102cabdff1aSopenharmony_ciextern const uint16_t ff_silk_pitch_max_lag[];
103cabdff1aSopenharmony_ci
104cabdff1aSopenharmony_ciextern const int8_t   ff_silk_pitch_offset_nb10ms[3][2];
105cabdff1aSopenharmony_ciextern const int8_t   ff_silk_pitch_offset_nb20ms[11][4];
106cabdff1aSopenharmony_ciextern const int8_t   ff_silk_pitch_offset_mbwb10ms[12][2];
107cabdff1aSopenharmony_ciextern const int8_t   ff_silk_pitch_offset_mbwb20ms[34][4];
108cabdff1aSopenharmony_ci
109cabdff1aSopenharmony_ciextern const int8_t   ff_silk_ltp_filter0_taps[8][5];
110cabdff1aSopenharmony_ciextern const int8_t   ff_silk_ltp_filter1_taps[16][5];
111cabdff1aSopenharmony_ciextern const int8_t   ff_silk_ltp_filter2_taps[32][5];
112cabdff1aSopenharmony_ci
113cabdff1aSopenharmony_ciextern const uint16_t ff_silk_ltp_scale_factor[];
114cabdff1aSopenharmony_ci
115cabdff1aSopenharmony_ciextern const uint8_t  ff_silk_shell_blocks[3][2];
116cabdff1aSopenharmony_ci
117cabdff1aSopenharmony_ciextern const uint8_t  ff_silk_quant_offset[2][2];
118cabdff1aSopenharmony_ci
119cabdff1aSopenharmony_ciextern const int      ff_silk_stereo_interp_len[3];
120cabdff1aSopenharmony_ci
121cabdff1aSopenharmony_ciextern const uint16_t ff_celt_model_tapset[];
122cabdff1aSopenharmony_ciextern const uint16_t ff_celt_model_spread[];
123cabdff1aSopenharmony_ciextern const uint16_t ff_celt_model_alloc_trim[];
124cabdff1aSopenharmony_ciextern const uint16_t ff_celt_model_energy_small[];
125cabdff1aSopenharmony_ci
126cabdff1aSopenharmony_ciextern const uint8_t  ff_celt_freq_bands[];
127cabdff1aSopenharmony_ciextern const uint8_t  ff_celt_freq_range[];
128cabdff1aSopenharmony_ciextern const uint8_t  ff_celt_log_freq_range[];
129cabdff1aSopenharmony_ci
130cabdff1aSopenharmony_ciextern const int8_t   ff_celt_tf_select[4][2][2][2];
131cabdff1aSopenharmony_ci
132cabdff1aSopenharmony_ciextern const float    ff_celt_mean_energy[];
133cabdff1aSopenharmony_ci
134cabdff1aSopenharmony_ciextern const float    ff_celt_alpha_coef[];
135cabdff1aSopenharmony_ciextern const float    ff_celt_beta_coef[];
136cabdff1aSopenharmony_ci
137cabdff1aSopenharmony_ciextern const uint8_t  ff_celt_coarse_energy_dist[4][2][42];
138cabdff1aSopenharmony_ci
139cabdff1aSopenharmony_ciextern const uint8_t  ff_celt_static_alloc[11][21];
140cabdff1aSopenharmony_ciextern const uint8_t  ff_celt_static_caps[4][2][21];
141cabdff1aSopenharmony_ci
142cabdff1aSopenharmony_ciextern const uint8_t  ff_celt_cache_bits[392];
143cabdff1aSopenharmony_ciextern const int16_t  ff_celt_cache_index[105];
144cabdff1aSopenharmony_ci
145cabdff1aSopenharmony_ciextern const uint8_t  ff_celt_log2_frac[];
146cabdff1aSopenharmony_ci
147cabdff1aSopenharmony_ciextern const uint8_t  ff_celt_bit_interleave[];
148cabdff1aSopenharmony_ciextern const uint8_t  ff_celt_bit_deinterleave[];
149cabdff1aSopenharmony_ci
150cabdff1aSopenharmony_ciextern const uint8_t  ff_celt_hadamard_order[];
151cabdff1aSopenharmony_ci
152cabdff1aSopenharmony_ciextern const uint16_t ff_celt_qn_exp2[];
153cabdff1aSopenharmony_ci
154cabdff1aSopenharmony_ciextern const float    ff_celt_postfilter_taps[3][3];
155cabdff1aSopenharmony_ci
156cabdff1aSopenharmony_ciextern const float    ff_celt_window2[120];
157cabdff1aSopenharmony_ciextern const float *const ff_celt_window;
158cabdff1aSopenharmony_ci
159cabdff1aSopenharmony_ciextern const uint32_t * const ff_celt_pvq_u_row[15];
160cabdff1aSopenharmony_ci
161cabdff1aSopenharmony_ci#endif /* AVCODEC_OPUSTAB_H */
162