annotate aactab.h @ 9473:e38284cd69dc libavcodec

Use memcpy instead of the very inefficient bytecopy where both are correct (i.e. no overlap of src and dst is possible).
author reimar
date Fri, 17 Apr 2009 17:20:48 +0000
parents e9d9d946f213
children 4cac4001dd23
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 /**
8718
e9d9d946f213 Use full internal pathname in doxygen @file directives.
diego
parents: 8671
diff changeset
24 * @file libavcodec/aactab.h
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"
0499a257d17f Move shared tables to aactab.c and add declarations to aactab.h. Also sync with
superdump
parents: 7422
diff changeset
35
7422
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
36 #include <stdint.h>
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
37
7539
4fca7939ad48 More OKed hunks of the AAC decoder from SoC
superdump
parents: 7523
diff changeset
38 /* NOTE:
4fca7939ad48 More OKed hunks of the AAC decoder from SoC
superdump
parents: 7523
diff changeset
39 * 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
40 * encoder.
4fca7939ad48 More OKed hunks of the AAC decoder from SoC
superdump
parents: 7523
diff changeset
41 */
4fca7939ad48 More OKed hunks of the AAC decoder from SoC
superdump
parents: 7523
diff changeset
42
7581
6fdffa4836a7 More OKed AAC decoder hunks
superdump
parents: 7580
diff changeset
43 /* @name window coefficients
6fdffa4836a7 More OKed AAC decoder hunks
superdump
parents: 7580
diff changeset
44 * @{
6fdffa4836a7 More OKed AAC decoder hunks
superdump
parents: 7580
diff changeset
45 */
6fdffa4836a7 More OKed AAC decoder hunks
superdump
parents: 7580
diff changeset
46 DECLARE_ALIGNED(16, extern float, ff_aac_kbd_long_1024[1024]);
6fdffa4836a7 More OKed AAC decoder hunks
superdump
parents: 7580
diff changeset
47 DECLARE_ALIGNED(16, extern float, ff_aac_kbd_short_128[128]);
6fdffa4836a7 More OKed AAC decoder hunks
superdump
parents: 7580
diff changeset
48 // @}
6fdffa4836a7 More OKed AAC decoder hunks
superdump
parents: 7580
diff changeset
49
7539
4fca7939ad48 More OKed hunks of the AAC decoder from SoC
superdump
parents: 7523
diff changeset
50 /* @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
51 * @{
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 extern const uint8_t ff_aac_num_swb_1024[];
4fca7939ad48 More OKed hunks of the AAC decoder from SoC
superdump
parents: 7523
diff changeset
54 extern const uint8_t ff_aac_num_swb_128 [];
4fca7939ad48 More OKed hunks of the AAC decoder from SoC
superdump
parents: 7523
diff changeset
55 // @}
4fca7939ad48 More OKed hunks of the AAC decoder from SoC
superdump
parents: 7523
diff changeset
56
8199
8a8d40fe77d9 AAC: Frequency domain prediction and hence Main profile support
superdump
parents: 7978
diff changeset
57 extern const uint8_t ff_aac_pred_sfb_max [];
8a8d40fe77d9 AAC: Frequency domain prediction and hence Main profile support
superdump
parents: 7978
diff changeset
58
7500
0499a257d17f Move shared tables to aactab.c and add declarations to aactab.h. Also sync with
superdump
parents: 7422
diff changeset
59 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
60 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
61
7978
dc1a7a6ec58d Add (additional) const to many global tables.
reimar
parents: 7760
diff changeset
62 extern const uint16_t * const ff_aac_spectral_codes[11];
dc1a7a6ec58d Add (additional) const to many global tables.
reimar
parents: 7760
diff changeset
63 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
64 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
65
7580
c49ab52db74c Synchronise AAC decoder code with that from SoC
superdump
parents: 7539
diff changeset
66 extern const float *ff_aac_codebook_vectors[];
7422
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
67
8590
7a463923ecd1 Change semantic of CONFIG_*, HAVE_* and ARCH_*.
aurel
parents: 8199
diff changeset
68 #if CONFIG_HARDCODED_TABLES
8671
77a633d4f4cc Fix AAC data smuggling:
kostya
parents: 8590
diff changeset
69 extern const float ff_aac_pow2sf_tab[428];
7581
6fdffa4836a7 More OKed AAC decoder hunks
superdump
parents: 7580
diff changeset
70 #else
8671
77a633d4f4cc Fix AAC data smuggling:
kostya
parents: 8590
diff changeset
71 extern float ff_aac_pow2sf_tab[428];
7422
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
72 #endif /* CONFIG_HARDCODED_TABLES */
e29ac68d3152 AAC tables and data that have been OKed by Michael
superdump
parents:
diff changeset
73
7760
c4a4495715dd Globally rename the header inclusion guard names.
stefano
parents: 7581
diff changeset
74 #endif /* AVCODEC_AACTAB_H */