Mercurial > mplayer.hg
annotate liba52/a52.h @ 28867:c7ac52e4b228
Merge two preprocessor conditions in order to drop one duplicated #else case.
author | diego |
---|---|
date | Mon, 09 Mar 2009 11:02:54 +0000 |
parents | dcdc0c85d354 |
children |
rev | line source |
---|---|
3394 | 1 /* |
2 * a52.h | |
18720
4bad7f00556e
sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents:
14991
diff
changeset
|
3 * Copyright (C) 2000-2002 Michel Lespinasse <walken@zoy.org> |
3394 | 4 * Copyright (C) 1999-2000 Aaron Holtzman <aholtzma@ess.engr.uvic.ca> |
5 * | |
6 * This file is part of a52dec, a free ATSC A-52 stream decoder. | |
7 * See http://liba52.sourceforge.net/ for updates. | |
8 * | |
14991
07f1e7669772
Mark modified files as such to comply more closely with GPL ¡ø2a.
diego
parents:
3909
diff
changeset
|
9 * Modified for use with MPlayer, changes contained in liba52_changes.diff. |
18783 | 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:
3909
diff
changeset
|
11 * $Id$ |
07f1e7669772
Mark modified files as such to comply more closely with GPL ¡ø2a.
diego
parents:
3909
diff
changeset
|
12 * |
3394 | 13 * a52dec is free software; you can redistribute it and/or modify |
14 * it under the terms of the GNU General Public License as published by | |
15 * the Free Software Foundation; either version 2 of the License, or | |
16 * (at your option) any later version. | |
17 * | |
18 * a52dec is distributed in the hope that it will be useful, | |
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
21 * GNU General Public License for more details. | |
22 * | |
23 * You should have received a copy of the GNU General Public License | |
24 * along with this program; if not, write to the Free Software | |
25 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
26 */ | |
27 | |
28 #ifndef A52_H | |
29 #define A52_H | |
30 | |
28797
dcdc0c85d354
Sync local changes file with #ifdef --> #if conversion.
diego
parents:
18783
diff
changeset
|
31 #include <stdint.h> |
dcdc0c85d354
Sync local changes file with #ifdef --> #if conversion.
diego
parents:
18783
diff
changeset
|
32 #include "mm_accel.h" |
dcdc0c85d354
Sync local changes file with #ifdef --> #if conversion.
diego
parents:
18783
diff
changeset
|
33 |
3394 | 34 #ifndef LIBA52_DOUBLE |
35 typedef float sample_t; | |
36 #else | |
37 typedef double sample_t; | |
38 #endif | |
39 | |
18720
4bad7f00556e
sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents:
14991
diff
changeset
|
40 typedef struct a52_state_s a52_state_t; |
3394 | 41 |
42 #define A52_CHANNEL 0 | |
43 #define A52_MONO 1 | |
44 #define A52_STEREO 2 | |
45 #define A52_3F 3 | |
46 #define A52_2F1R 4 | |
47 #define A52_3F1R 5 | |
48 #define A52_2F2R 6 | |
49 #define A52_3F2R 7 | |
50 #define A52_CHANNEL1 8 | |
51 #define A52_CHANNEL2 9 | |
52 #define A52_DOLBY 10 | |
53 #define A52_CHANNEL_MASK 15 | |
54 | |
55 #define A52_LFE 16 | |
56 #define A52_ADJUST_LEVEL 32 | |
57 | |
18720
4bad7f00556e
sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents:
14991
diff
changeset
|
58 a52_state_t * a52_init (uint32_t mm_accel); |
4bad7f00556e
sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents:
14991
diff
changeset
|
59 sample_t * a52_samples (a52_state_t * state); |
3394 | 60 int a52_syncinfo (uint8_t * buf, int * flags, |
61 int * sample_rate, int * bit_rate); | |
62 int a52_frame (a52_state_t * state, uint8_t * buf, int * flags, | |
63 sample_t * level, sample_t bias); | |
64 void a52_dynrng (a52_state_t * state, | |
65 sample_t (* call) (sample_t, void *), void * data); | |
18720
4bad7f00556e
sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents:
14991
diff
changeset
|
66 int a52_block (a52_state_t * state); |
4bad7f00556e
sync with liba52 0.7.4, patch by Emanuele Giaquinta >emanuele.giaquinta ! gmail * com<
rathann
parents:
14991
diff
changeset
|
67 void a52_free (a52_state_t * state); |
3890 | 68 |
3909 | 69 void* a52_resample_init(uint32_t mm_accel,int flags,int chans); |
3626 | 70 extern int (* a52_resample) (float * _f, int16_t * s16); |
3394 | 71 |
3890 | 72 uint16_t crc16_block(uint8_t *data,uint32_t num_bytes); |
73 | |
3394 | 74 #endif /* A52_H */ |