Mercurial > mplayer.hg
annotate libfaad2/decoder.h @ 13242:185d052020e5
We don't need to support the old nvidia binary driver bug any longer.
author | al |
---|---|
date | Fri, 03 Sep 2004 20:22:22 +0000 |
parents | d81145997036 |
children | 6d50ef45a058 |
rev | line source |
---|---|
10725 | 1 /* |
2 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding | |
12527 | 3 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com |
10725 | 4 ** |
5 ** This program is free software; you can redistribute it and/or modify | |
6 ** it under the terms of the GNU General Public License as published by | |
7 ** the Free Software Foundation; either version 2 of the License, or | |
8 ** (at your option) any later version. | |
9 ** | |
10 ** This program is distributed in the hope that it will be useful, | |
11 ** but WITHOUT ANY WARRANTY; without even the implied warranty of | |
12 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
13 ** GNU General Public License for more details. | |
14 ** | |
15 ** You should have received a copy of the GNU General Public License | |
16 ** along with this program; if not, write to the Free Software | |
17 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. | |
18 ** | |
19 ** Any non-GPL usage of this software or parts of this software is strictly | |
20 ** forbidden. | |
21 ** | |
22 ** Commercial non-GPL licensing of this software is possible. | |
23 ** For more info contact Ahead Software through Mpeg4AAClicense@nero.com. | |
24 ** | |
12625
d81145997036
More information about modifications to comply more closely with GPL 2a.
diego
parents:
12527
diff
changeset
|
25 ** Initially modified for use with MPlayer by Arpad Gereöffy on 2003/08/30 |
d81145997036
More information about modifications to comply more closely with GPL 2a.
diego
parents:
12527
diff
changeset
|
26 ** $Id: decoder.h,v 1.3 2004/06/02 22:59:02 diego Exp $ |
d81145997036
More information about modifications to comply more closely with GPL 2a.
diego
parents:
12527
diff
changeset
|
27 ** detailed CVS changelog at http://www.mplayerhq.hu/cgi-bin/cvsweb.cgi/main/ |
10725 | 28 **/ |
29 | |
30 #ifndef __DECODER_H__ | |
31 #define __DECODER_H__ | |
32 | |
33 #ifdef __cplusplus | |
34 extern "C" { | |
35 #endif | |
36 | |
37 #ifdef _WIN32 | |
38 #pragma pack(push, 8) | |
39 #ifndef FAADAPI | |
40 #define FAADAPI __cdecl | |
41 #endif | |
42 #else | |
43 #ifndef FAADAPI | |
44 #define FAADAPI | |
45 #endif | |
46 #endif | |
47 | |
48 #include "bits.h" | |
49 #include "syntax.h" | |
50 #include "drc.h" | |
51 #include "specrec.h" | |
52 #include "filtbank.h" | |
53 #include "ic_predict.h" | |
54 | |
55 | |
56 /* library output formats */ | |
57 #define FAAD_FMT_16BIT 1 | |
58 #define FAAD_FMT_24BIT 2 | |
59 #define FAAD_FMT_32BIT 3 | |
60 #define FAAD_FMT_FLOAT 4 | |
61 #define FAAD_FMT_DOUBLE 5 | |
62 | |
63 #define LC_DEC_CAP (1<<0) | |
64 #define MAIN_DEC_CAP (1<<1) | |
65 #define LTP_DEC_CAP (1<<2) | |
66 #define LD_DEC_CAP (1<<3) | |
67 #define ERROR_RESILIENCE_CAP (1<<4) | |
68 #define FIXED_POINT_CAP (1<<5) | |
69 | |
70 #define FRONT_CHANNEL_CENTER (1) | |
71 #define FRONT_CHANNEL_LEFT (2) | |
72 #define FRONT_CHANNEL_RIGHT (3) | |
73 #define SIDE_CHANNEL_LEFT (4) | |
74 #define SIDE_CHANNEL_RIGHT (5) | |
75 #define BACK_CHANNEL_LEFT (6) | |
76 #define BACK_CHANNEL_RIGHT (7) | |
77 #define BACK_CHANNEL_CENTER (8) | |
78 #define LFE_CHANNEL (9) | |
79 #define UNKNOWN_CHANNEL (0) | |
80 | |
81 int8_t* FAADAPI faacDecGetErrorMessage(uint8_t errcode); | |
82 | |
12527 | 83 uint32_t FAADAPI faacDecGetCapabilities(void); |
10725 | 84 |
12527 | 85 faacDecHandle FAADAPI faacDecOpen(void); |
10725 | 86 |
87 faacDecConfigurationPtr FAADAPI faacDecGetCurrentConfiguration(faacDecHandle hDecoder); | |
88 | |
89 uint8_t FAADAPI faacDecSetConfiguration(faacDecHandle hDecoder, | |
90 faacDecConfigurationPtr config); | |
91 | |
92 /* Init the library based on info from the AAC file (ADTS/ADIF) */ | |
93 int32_t FAADAPI faacDecInit(faacDecHandle hDecoder, | |
94 uint8_t *buffer, | |
95 uint32_t buffer_size, | |
96 uint32_t *samplerate, | |
97 uint8_t *channels); | |
98 | |
99 /* Init the library using a DecoderSpecificInfo */ | |
100 int8_t FAADAPI faacDecInit2(faacDecHandle hDecoder, uint8_t *pBuffer, | |
101 uint32_t SizeOfDecoderSpecificInfo, | |
102 uint32_t *samplerate, uint8_t *channels); | |
103 | |
104 /* Init the library for DRM */ | |
105 int8_t FAADAPI faacDecInitDRM(faacDecHandle hDecoder, uint32_t samplerate, | |
106 uint8_t channels); | |
107 | |
108 void FAADAPI faacDecClose(faacDecHandle hDecoder); | |
109 | |
10989 | 110 void FAADAPI faacDecPostSeekReset(faacDecHandle hDecoder, int32_t frame); |
111 | |
10725 | 112 void* FAADAPI faacDecDecode(faacDecHandle hDecoder, |
113 faacDecFrameInfo *hInfo, | |
114 uint8_t *buffer, | |
115 uint32_t buffer_size); | |
116 | |
117 #ifdef _WIN32 | |
118 #pragma pack(pop) | |
119 #endif | |
120 | |
121 #ifdef __cplusplus | |
122 } | |
123 #endif | |
124 #endif |