annotate liba52/a52.h @ 29809:e255f9571156

Remove CONFIG_TV_TELETEXT. DVB teletext support is nearly finished, it will be possible to read teletext from file, it will not be depending on reception any more.
author cehoyos
date Sat, 07 Nov 2009 16:40:42 +0000
parents dcdc0c85d354
children
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.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
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: 3909
diff changeset
9 * Modified for use with MPlayer, changes contained in liba52_changes.diff.
18783
0783dd397f74 CVS --> Subversion in copyright notices
diego
parents: 18720
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: 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
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
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
28 #ifndef A52_H
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
29 #define A52_H
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
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
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
34 #ifndef LIBA52_DOUBLE
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
35 typedef float sample_t;
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
36 #else
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
37 typedef double sample_t;
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
38 #endif
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
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
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
41
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
42 #define A52_CHANNEL 0
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
43 #define A52_MONO 1
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
44 #define A52_STEREO 2
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
45 #define A52_3F 3
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
46 #define A52_2F1R 4
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
47 #define A52_3F1R 5
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
48 #define A52_2F2R 6
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
49 #define A52_3F2R 7
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
50 #define A52_CHANNEL1 8
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
51 #define A52_CHANNEL2 9
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
52 #define A52_DOLBY 10
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
53 #define A52_CHANNEL_MASK 15
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
54
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
55 #define A52_LFE 16
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
56 #define A52_ADJUST_LEVEL 32
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
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
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
60 int a52_syncinfo (uint8_t * buf, int * flags,
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
61 int * sample_rate, int * bit_rate);
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
62 int a52_frame (a52_state_t * state, uint8_t * buf, int * flags,
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
63 sample_t * level, sample_t bias);
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
64 void a52_dynrng (a52_state_t * state,
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
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
c3e62caf9ec6 CRC code ported from libac3
arpi
parents: 3626
diff changeset
68
3909
ef32c8bdee81 c, mmx versions separated. a52 style runtime stuff
arpi
parents: 3907
diff changeset
69 void* a52_resample_init(uint32_t mm_accel,int flags,int chans);
3626
e22ff7ebdc05 runtime cpu detection for the resample stuff
michael
parents: 3394
diff changeset
70 extern int (* a52_resample) (float * _f, int16_t * s16);
3394
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
71
3890
c3e62caf9ec6 CRC code ported from libac3
arpi
parents: 3626
diff changeset
72 uint16_t crc16_block(uint8_t *data,uint32_t num_bytes);
c3e62caf9ec6 CRC code ported from libac3
arpi
parents: 3626
diff changeset
73
3394
35b18ed357c2 imported from liba52 CVS
arpi
parents:
diff changeset
74 #endif /* A52_H */