annotate aactab.h @ 12530:63edd10ad4bc libavcodec tip

Try to fix crashes introduced by r25218 r25218 made assumptions about the existence of past reference frames that weren't necessarily true.
author darkshikari
date Tue, 28 Sep 2010 09:06:22 +0000
parents ebe049799f6d
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
7422
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
1 /*
7500
0499a257d17f Move shared tables to aactab.c and add declarations to aactab.h. Also sync with
superdump
parents: 7422
diff changeset
2 * AAC data declarations
7422
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
3 * Copyright (c) 2005-2006 Oded Shimon ( ods15 ods15 dyndns org )
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
4 * Copyright (c) 2006-2007 Maxim Gavrilov ( maxim.gavrilov gmail com )
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
5 *
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
6 * This file is part of FFmpeg.
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
7 *
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
8 * FFmpeg is free software; you can redistribute it and/or
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
9 * modify it under the terms of the GNU Lesser General Public
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
10 * License as published by the Free Software Foundation; either
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
11 * version 2.1 of the License, or (at your option) any later version.
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
12 *
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
13 * FFmpeg is distributed in the hope that it will be useful,
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
16 * Lesser General Public License for more details.
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
17 *
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
18 * You should have received a copy of the GNU Lesser General Public
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
19 * License along with FFmpeg; if not, write to the Free Software
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
20 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
21 */
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
22
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
23 /**
11644
7dd2a45249a9 Remove explicit filename from Doxygen @file commands.
diego
parents: 10961
diff changeset
24 * @file
7500
0499a257d17f Move shared tables to aactab.c and add declarations to aactab.h. Also sync with
superdump
parents: 7422
diff changeset
25 * AAC data declarations
7422
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
26 * @author Oded Shimon ( ods15 ods15 dyndns org )
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
27 * @author Maxim Gavrilov ( maxim.gavrilov gmail com )
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
28 */
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
29
7760
c4a4495715dd Globally rename the header inclusion guard names.
stefano
parents: 7581
diff changeset
30 #ifndef AVCODEC_AACTAB_H
c4a4495715dd Globally rename the header inclusion guard names.
stefano
parents: 7581
diff changeset
31 #define AVCODEC_AACTAB_H
7422
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
32
7523
a3f7ffdb676d Sync already committed code with that in SoC and commit more OKed hunks of code
superdump
parents: 7500
diff changeset
33 #include "libavutil/mem.h"
7500
0499a257d17f Move shared tables to aactab.c and add declarations to aactab.h. Also sync with
superdump
parents: 7422
diff changeset
34 #include "aac.h"
11932
ebe049799f6d aactab: Tablegenify ff_aac_pow2sf_tab.
alexc
parents: 11644
diff changeset
35 #include "aac_tablegen_decl.h"
7500
0499a257d17f Move shared tables to aactab.c and add declarations to aactab.h. Also sync with
superdump
parents: 7422
diff changeset
36
7422
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
37 #include <stdint.h>
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
38
7539
4fca7939ad48 More OKed hunks of the AAC decoder from SoC
superdump
parents: 7523
diff changeset
39 /* NOTE:
4fca7939ad48 More OKed hunks of the AAC decoder from SoC
superdump
parents: 7523
diff changeset
40 * Tables in this file are used by the AAC decoder and will be used by the AAC
4fca7939ad48 More OKed hunks of the AAC decoder from SoC
superdump
parents: 7523
diff changeset
41 * encoder.
4fca7939ad48 More OKed hunks of the AAC decoder from SoC
superdump
parents: 7523
diff changeset
42 */
4fca7939ad48 More OKed hunks of the AAC decoder from SoC
superdump
parents: 7523
diff changeset
43
7581
6fdffa4836a7 More OKed AAC decoder hunks
superdump
parents: 7580
diff changeset
44 /* @name window coefficients
6fdffa4836a7 More OKed AAC decoder hunks
superdump
parents: 7580
diff changeset
45 * @{
6fdffa4836a7 More OKed AAC decoder hunks
superdump
parents: 7580
diff changeset
46 */
10961
34a65026fa06 Move array specifiers outside DECLARE_ALIGNED() invocations
mru
parents: 10874
diff changeset
47 DECLARE_ALIGNED(16, extern float, ff_aac_kbd_long_1024)[1024];
34a65026fa06 Move array specifiers outside DECLARE_ALIGNED() invocations
mru
parents: 10874
diff changeset
48 DECLARE_ALIGNED(16, extern float, ff_aac_kbd_short_128)[128];
7581
6fdffa4836a7 More OKed AAC decoder hunks
superdump
parents: 7580
diff changeset
49 // @}
6fdffa4836a7 More OKed AAC decoder hunks
superdump
parents: 7580
diff changeset
50
7539
4fca7939ad48 More OKed hunks of the AAC decoder from SoC
superdump
parents: 7523
diff changeset
51 /* @name number of scalefactor window bands for long and short transform windows respectively
4fca7939ad48 More OKed hunks of the AAC decoder from SoC
superdump
parents: 7523
diff changeset
52 * @{
4fca7939ad48 More OKed hunks of the AAC decoder from SoC
superdump
parents: 7523
diff changeset
53 */
4fca7939ad48 More OKed hunks of the AAC decoder from SoC
superdump
parents: 7523
diff changeset
54 extern const uint8_t ff_aac_num_swb_1024[];
4fca7939ad48 More OKed hunks of the AAC decoder from SoC
superdump
parents: 7523
diff changeset
55 extern const uint8_t ff_aac_num_swb_128 [];
4fca7939ad48 More OKed hunks of the AAC decoder from SoC
superdump
parents: 7523
diff changeset
56 // @}
4fca7939ad48 More OKed hunks of the AAC decoder from SoC
superdump
parents: 7523
diff changeset
57
8199
8a8d40fe77d9 AAC: Frequency domain prediction and hence Main profile support
superdump
parents: 7978
diff changeset
58 extern const uint8_t ff_aac_pred_sfb_max [];
8a8d40fe77d9 AAC: Frequency domain prediction and hence Main profile support
superdump
parents: 7978
diff changeset
59
7500
0499a257d17f Move shared tables to aactab.c and add declarations to aactab.h. Also sync with
superdump
parents: 7422
diff changeset
60 extern const uint32_t ff_aac_scalefactor_code[121];
0499a257d17f Move shared tables to aactab.c and add declarations to aactab.h. Also sync with
superdump
parents: 7422
diff changeset
61 extern const uint8_t ff_aac_scalefactor_bits[121];
7422
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
62
7978
dc1a7a6ec58d Add (additional) const to many global tables.
reimar
parents: 7760
diff changeset
63 extern const uint16_t * const ff_aac_spectral_codes[11];
dc1a7a6ec58d Add (additional) const to many global tables.
reimar
parents: 7760
diff changeset
64 extern const uint8_t * const ff_aac_spectral_bits [11];
7500
0499a257d17f Move shared tables to aactab.c and add declarations to aactab.h. Also sync with
superdump
parents: 7422
diff changeset
65 extern const uint16_t ff_aac_spectral_sizes[11];
7422
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
66
7580
c49ab52db74c Synchronise AAC decoder code with that from SoC
superdump
parents: 7539
diff changeset
67 extern const float *ff_aac_codebook_vectors[];
10874
bcfe2acbf190 AAC: Compress codebook tables and optimise sign bit handling
mru
parents: 10141
diff changeset
68 extern const float *ff_aac_codebook_vector_vals[];
bcfe2acbf190 AAC: Compress codebook tables and optimise sign bit handling
mru
parents: 10141
diff changeset
69 extern const uint16_t *ff_aac_codebook_vector_idx[];
7422
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
70
10141
69d79f51b8ce ff_swb_offset_* tables should be const.
reimar
parents: 9846
diff changeset
71 extern const uint16_t * const ff_swb_offset_1024[13];
69d79f51b8ce ff_swb_offset_* tables should be const.
reimar
parents: 9846
diff changeset
72 extern const uint16_t * const ff_swb_offset_128 [13];
9846
4cac4001dd23 Move TNS and swb_offset tables from aacdectab.h to aactab.c so that they can be
alexc
parents: 8718
diff changeset
73
4cac4001dd23 Move TNS and swb_offset tables from aacdectab.h to aactab.c so that they can be
alexc
parents: 8718
diff changeset
74 extern const uint8_t ff_tns_max_bands_1024[13];
4cac4001dd23 Move TNS and swb_offset tables from aacdectab.h to aactab.c so that they can be
alexc
parents: 8718
diff changeset
75 extern const uint8_t ff_tns_max_bands_128 [13];
4cac4001dd23 Move TNS and swb_offset tables from aacdectab.h to aactab.c so that they can be
alexc
parents: 8718
diff changeset
76
7760
c4a4495715dd Globally rename the header inclusion guard names.
stefano
parents: 7581
diff changeset
77 #endif /* AVCODEC_AACTAB_H */