annotate liba52/a52_internal.h @ 21807:46462e15ea55

move runtime cpu detection check after detection of host architecture, since it uses the host architecture to check if it is supported.
author reimar
date Fri, 05 Jan 2007 10:05:05 +0000
parents 0783dd397f74
children 25337a2147e7
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3394
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
1 /*
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
2 * a52_internal.h
18720
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
3 * Copyright (C) 2000-2002 Michel Lespinasse <walken@zoy.org>
3394
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
4 * Copyright (C) 1999-2000 Aaron Holtzman <aholtzma@ess.engr.uvic.ca>
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
5 *
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
6 * This file is part of a52dec, a free ATSC A-52 stream decoder.
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
7 * See http://liba52.sourceforge.net/ for updates.
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
8 *
14991
07f1e7669772 Mark modified files as such to comply more closely with GPL ¡ø2a.
diego
parents: 3910
diff changeset
9 * Modified for use with MPlayer, changes contained in liba52_changes.diff.
18783
0783dd397f74 CVS --> Subversion in copyright notices
diego
parents: 18721
diff changeset
10 * detailed changelog at http://svn.mplayerhq.hu/mplayer/trunk/
14991
07f1e7669772 Mark modified files as such to comply more closely with GPL ¡ø2a.
diego
parents: 3910
diff changeset
11 * $Id$
07f1e7669772 Mark modified files as such to comply more closely with GPL ¡ø2a.
diego
parents: 3910
diff changeset
12 *
3394
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
13 * a52dec is free software; you can redistribute it and/or modify
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
14 * it under the terms of the GNU General Public License as published by
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
15 * the Free Software Foundation; either version 2 of the License, or
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
16 * (at your option) any later version.
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
17 *
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
18 * a52dec is distributed in the hope that it will be useful,
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
21 * GNU General Public License for more details.
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
22 *
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
23 * You should have received a copy of the GNU General Public License
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
24 * along with this program; if not, write to the Free Software
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
25 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
26 */
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
27
18720
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
28 typedef struct {
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
29 uint8_t bai; /* fine SNR offset, fast gain */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
30 uint8_t deltbae; /* delta bit allocation exists */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
31 int8_t deltba[50]; /* per-band delta bit allocation */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
32 } ba_t;
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
33
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
34 typedef struct {
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
35 uint8_t exp[256]; /* decoded channel exponents */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
36 int8_t bap[256]; /* derived channel bit allocation */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
37 } expbap_t;
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
38
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
39 struct a52_state_s {
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
40 uint8_t fscod; /* sample rate */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
41 uint8_t halfrate; /* halfrate factor */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
42 uint8_t acmod; /* coded channels */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
43 uint8_t lfeon; /* coded lfe channel */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
44 sample_t clev; /* centre channel mix level */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
45 sample_t slev; /* surround channels mix level */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
46
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
47 int output; /* type of output */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
48 sample_t level; /* output level */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
49 sample_t bias; /* output bias */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
50
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
51 int dynrnge; /* apply dynamic range */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
52 sample_t dynrng; /* dynamic range */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
53 void * dynrngdata; /* dynamic range callback funtion and data */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
54 sample_t (* dynrngcall) (sample_t range, void * dynrngdata);
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
55
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
56 uint8_t chincpl; /* channel coupled */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
57 uint8_t phsflginu; /* phase flags in use (stereo only) */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
58 uint8_t cplstrtmant; /* coupling channel start mantissa */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
59 uint8_t cplendmant; /* coupling channel end mantissa */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
60 uint32_t cplbndstrc; /* coupling band structure */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
61 sample_t cplco[5][18]; /* coupling coordinates */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
62
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
63 /* derived information */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
64 uint8_t cplstrtbnd; /* coupling start band (for bit allocation) */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
65 uint8_t ncplbnd; /* number of coupling bands */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
66
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
67 uint8_t rematflg; /* stereo rematrixing */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
68
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
69 uint8_t endmant[5]; /* channel end mantissa */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
70
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
71 uint16_t bai; /* bit allocation information */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
72
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
73 uint32_t * buffer_start;
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
74 uint16_t lfsr_state; /* dither state */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
75 uint32_t bits_left;
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
76 uint32_t current_word;
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
77
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
78 uint8_t csnroffst; /* coarse SNR offset */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
79 ba_t cplba; /* coupling bit allocation parameters */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
80 ba_t ba[5]; /* channel bit allocation parameters */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
81 ba_t lfeba; /* lfe bit allocation parameters */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
82
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
83 uint8_t cplfleak; /* coupling fast leak init */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
84 uint8_t cplsleak; /* coupling slow leak init */
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
85
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
86 expbap_t cpl_expbap;
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
87 expbap_t fbw_expbap[5];
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
88 expbap_t lfe_expbap;
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
89
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
90 sample_t * samples;
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
91 int downmixed;
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
92 };
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
93
3394
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
94 #define LEVEL_PLUS6DB 2.0
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
95 #define LEVEL_PLUS3DB 1.4142135623730951
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
96 #define LEVEL_3DB 0.7071067811865476
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
97 #define LEVEL_45DB 0.5946035575013605
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
98 #define LEVEL_6DB 0.5
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
99
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
100 #define EXP_REUSE (0)
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
101 #define EXP_D15 (1)
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
102 #define EXP_D25 (2)
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
103 #define EXP_D45 (3)
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
104
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
105 #define DELTA_BIT_REUSE (0)
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
106 #define DELTA_BIT_NEW (1)
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
107 #define DELTA_BIT_NONE (2)
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
108 #define DELTA_BIT_RESERVED (3)
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
109
16173
d6219ce521e9 liba52 asm optimizations ported to amd64
aurel
parents: 14991
diff changeset
110 #ifdef ARCH_X86_64
d6219ce521e9 liba52 asm optimizations ported to amd64
aurel
parents: 14991
diff changeset
111 # define REG_a "rax"
d6219ce521e9 liba52 asm optimizations ported to amd64
aurel
parents: 14991
diff changeset
112 # define REG_d "rdx"
d6219ce521e9 liba52 asm optimizations ported to amd64
aurel
parents: 14991
diff changeset
113 # define REG_S "rsi"
d6219ce521e9 liba52 asm optimizations ported to amd64
aurel
parents: 14991
diff changeset
114 # define REG_D "rdi"
d6219ce521e9 liba52 asm optimizations ported to amd64
aurel
parents: 14991
diff changeset
115 # define REG_BP "rbp"
d6219ce521e9 liba52 asm optimizations ported to amd64
aurel
parents: 14991
diff changeset
116 #else
d6219ce521e9 liba52 asm optimizations ported to amd64
aurel
parents: 14991
diff changeset
117 # define REG_a "eax"
d6219ce521e9 liba52 asm optimizations ported to amd64
aurel
parents: 14991
diff changeset
118 # define REG_d "edx"
d6219ce521e9 liba52 asm optimizations ported to amd64
aurel
parents: 14991
diff changeset
119 # define REG_S "esi"
d6219ce521e9 liba52 asm optimizations ported to amd64
aurel
parents: 14991
diff changeset
120 # define REG_D "edi"
d6219ce521e9 liba52 asm optimizations ported to amd64
aurel
parents: 14991
diff changeset
121 # define REG_BP "ebp"
d6219ce521e9 liba52 asm optimizations ported to amd64
aurel
parents: 14991
diff changeset
122 #endif
d6219ce521e9 liba52 asm optimizations ported to amd64
aurel
parents: 14991
diff changeset
123
18720
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
124 void a52_bit_allocate (a52_state_t * state, ba_t * ba, int bndstart,
18721
722ac20fac5f sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 18720
diff changeset
125 int start, int end, int fastleak, int slowleak,
18720
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
126 expbap_t * expbap);
3394
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
127
18720
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
128 int a52_downmix_init (int input, int flags, sample_t * level,
18721
722ac20fac5f sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 18720
diff changeset
129 sample_t clev, sample_t slev);
3910
db1d556fcf58 runtime cpudetect the liba52 way part 2 (downmix.c)
michael
parents: 3904
diff changeset
130 void downmix_accel_init(uint32_t mm_accel);
18720
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
131 int a52_downmix_coeff (sample_t * coeff, int acmod, int output, sample_t level,
18721
722ac20fac5f sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 18720
diff changeset
132 sample_t clev, sample_t slev);
18720
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
133 extern void (*a52_downmix) (sample_t * samples, int acmod, int output, sample_t bias,
18721
722ac20fac5f sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 18720
diff changeset
134 sample_t clev, sample_t slev);
18720
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
135 extern void (*a52_upmix) (sample_t * samples, int acmod, int output);
3394
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
136
18720
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
137 void a52_imdct_init (uint32_t mm_accel);
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
138 void a52_imdct_256 (sample_t * data, sample_t * delay, sample_t bias);
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
139 extern void (*a52_imdct_512) (sample_t * data, sample_t * delay, sample_t bias);
4bad7f00556e sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents: 16173
diff changeset
140 void imdct_do_512 (sample_t * data, sample_t * delay, sample_t bias);