]> git.sesse.net Git - ffmpeg/blob - libavcodec/mdct_tablegen.c
Make sure the EC code does not attempt to use inter based concealment if there
[ffmpeg] / libavcodec / mdct_tablegen.c
1 /*
2  * Generate a header file for hardcoded MDCT tables
3  *
4  * Copyright (c) 2009 Reimar Döffinger <Reimar.Doeffinger@gmx.de>
5  *
6  * This file is part of FFmpeg.
7  *
8  * FFmpeg is free software; you can redistribute it and/or
9  * modify it under the terms of the GNU Lesser General Public
10  * License as published by the Free Software Foundation; either
11  * version 2.1 of the License, or (at your option) any later version.
12  *
13  * FFmpeg is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16  * Lesser General Public License for more details.
17  *
18  * You should have received a copy of the GNU Lesser General Public
19  * License along with FFmpeg; if not, write to the Free Software
20  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
21  */
22
23 #include <stdlib.h>
24 #define CONFIG_HARDCODED_TABLES 0
25 #define SINETABLE_CONST
26 #define SINETABLE(size) \
27     float ff_sine_##size[size]
28 #define FF_ARRAY_ELEMS(a) (sizeof(a) / sizeof((a)[0]))
29 #ifndef M_PI
30 #define M_PI 3.14159265358979323846
31 #endif
32 #include "mdct_tablegen.h"
33 #include "tableprint.h"
34
35 void tableinit(void)
36 {
37     int i;
38     for (i = 5; i <= 12; i++)
39         ff_init_ff_sine_windows(i);
40 }
41
42 #define SINE_TABLE_DEF(size) \
43     { \
44         "SINETABLE("#size")", \
45         write_float_array, \
46         ff_sine_##size, \
47         size \
48     },
49
50 const struct tabledef tables[] = {
51     SINE_TABLE_DEF(  32)
52     SINE_TABLE_DEF(  64)
53     SINE_TABLE_DEF( 128)
54     SINE_TABLE_DEF( 256)
55     SINE_TABLE_DEF( 512)
56     SINE_TABLE_DEF(1024)
57     SINE_TABLE_DEF(2048)
58     SINE_TABLE_DEF(4096)
59     { NULL }
60 };