Contents of /trunk/libfaad2/patches/libfaad2-2.0-64bit.patch
Parent Directory | Revision Log
Revision 144 -
(show annotations)
(download)
Tue May 8 20:06:05 2007 UTC (17 years, 4 months ago) by niro
File size: 9809 byte(s)
Tue May 8 20:06:05 2007 UTC (17 years, 4 months ago) by niro
File size: 9809 byte(s)
-import
1 | Index: faad2-2.0/include/faad.h |
2 | =================================================================== |
3 | --- faad2-2.0.orig/include/faad.h |
4 | +++ faad2-2.0/include/faad.h |
5 | @@ -43,6 +43,10 @@ extern "C" { |
6 | #endif |
7 | #endif |
8 | |
9 | +/* needed for standard integer types */ |
10 | +#define __STDC_LIMIT_MACROS |
11 | +#include <stdint.h> |
12 | + |
13 | #define FAAD2_VERSION "2.0 " |
14 | |
15 | /* object types for AAC */ |
16 | @@ -112,86 +116,86 @@ typedef void *faacDecHandle; |
17 | typedef struct mp4AudioSpecificConfig |
18 | { |
19 | /* Audio Specific Info */ |
20 | - unsigned char objectTypeIndex; |
21 | - unsigned char samplingFrequencyIndex; |
22 | - unsigned long samplingFrequency; |
23 | - unsigned char channelsConfiguration; |
24 | + uint8_t objectTypeIndex; |
25 | + uint8_t samplingFrequencyIndex; |
26 | + uint32_t samplingFrequency; |
27 | + uint8_t channelsConfiguration; |
28 | |
29 | /* GA Specific Info */ |
30 | - unsigned char frameLengthFlag; |
31 | - unsigned char dependsOnCoreCoder; |
32 | - unsigned short coreCoderDelay; |
33 | - unsigned char extensionFlag; |
34 | - unsigned char aacSectionDataResilienceFlag; |
35 | - unsigned char aacScalefactorDataResilienceFlag; |
36 | - unsigned char aacSpectralDataResilienceFlag; |
37 | - unsigned char epConfig; |
38 | + uint8_t frameLengthFlag; |
39 | + uint8_t dependsOnCoreCoder; |
40 | + uint16_t coreCoderDelay; |
41 | + uint8_t extensionFlag; |
42 | + uint8_t aacSectionDataResilienceFlag; |
43 | + uint8_t aacScalefactorDataResilienceFlag; |
44 | + uint8_t aacSpectralDataResilienceFlag; |
45 | + uint8_t epConfig; |
46 | |
47 | - char sbr_present_flag; |
48 | - char forceUpSampling; |
49 | + int8_t sbr_present_flag; |
50 | + int8_t forceUpSampling; |
51 | } mp4AudioSpecificConfig; |
52 | |
53 | typedef struct faacDecConfiguration |
54 | { |
55 | - unsigned char defObjectType; |
56 | - unsigned long defSampleRate; |
57 | - unsigned char outputFormat; |
58 | - unsigned char downMatrix; |
59 | - unsigned char useOldADTSFormat; |
60 | - unsigned char dontUpSampleImplicitSBR; |
61 | + uint8_t defObjectType; |
62 | + uint8_t defSampleRate; |
63 | + uint8_t outputFormat; |
64 | + uint8_t downMatrix; |
65 | + uint8_t useOldADTSFormat; |
66 | + uint8_t dontUpSampleImplicitSBR; |
67 | } faacDecConfiguration, *faacDecConfigurationPtr; |
68 | |
69 | typedef struct faacDecFrameInfo |
70 | { |
71 | - unsigned long bytesconsumed; |
72 | - unsigned long samples; |
73 | - unsigned char channels; |
74 | - unsigned char error; |
75 | - unsigned long samplerate; |
76 | + uint32_t bytesconsumed; |
77 | + uint32_t samples; |
78 | + uint8_t channels; |
79 | + uint8_t error; |
80 | + uint32_t samplerate; |
81 | |
82 | /* SBR: 0: off, 1: on; upsample, 2: on; downsampled, 3: off; upsampled */ |
83 | - unsigned char sbr; |
84 | + uint8_t sbr; |
85 | |
86 | /* MPEG-4 ObjectType */ |
87 | - unsigned char object_type; |
88 | + uint8_t object_type; |
89 | |
90 | /* AAC header type; MP4 will be signalled as RAW also */ |
91 | - unsigned char header_type; |
92 | + uint8_t header_type; |
93 | |
94 | /* multichannel configuration */ |
95 | - unsigned char num_front_channels; |
96 | - unsigned char num_side_channels; |
97 | - unsigned char num_back_channels; |
98 | - unsigned char num_lfe_channels; |
99 | - unsigned char channel_position[64]; |
100 | + uint8_t num_front_channels; |
101 | + uint8_t num_side_channels; |
102 | + uint8_t num_back_channels; |
103 | + uint8_t num_lfe_channels; |
104 | + uint8_t channel_position[64]; |
105 | } faacDecFrameInfo; |
106 | |
107 | -char* FAADAPI faacDecGetErrorMessage(unsigned char errcode); |
108 | +int8_t* FAADAPI faacDecGetErrorMessage(uint8_t errcode); |
109 | |
110 | -unsigned long FAADAPI faacDecGetCapabilities(void); |
111 | +uint32_t FAADAPI faacDecGetCapabilities(void); |
112 | |
113 | faacDecHandle FAADAPI faacDecOpen(void); |
114 | |
115 | faacDecConfigurationPtr FAADAPI faacDecGetCurrentConfiguration(faacDecHandle hDecoder); |
116 | |
117 | -unsigned char FAADAPI faacDecSetConfiguration(faacDecHandle hDecoder, |
118 | +uint8_t FAADAPI faacDecSetConfiguration(faacDecHandle hDecoder, |
119 | faacDecConfigurationPtr config); |
120 | |
121 | /* Init the library based on info from the AAC file (ADTS/ADIF) */ |
122 | long FAADAPI faacDecInit(faacDecHandle hDecoder, |
123 | - unsigned char *buffer, |
124 | - unsigned long buffer_size, |
125 | - unsigned long *samplerate, |
126 | - unsigned char *channels); |
127 | + uint8_t *buffer, |
128 | + uint32_t buffer_size, |
129 | + uint32_t *samplerate, |
130 | + uint8_t *channels); |
131 | |
132 | /* Init the library using a DecoderSpecificInfo */ |
133 | -char FAADAPI faacDecInit2(faacDecHandle hDecoder, unsigned char *pBuffer, |
134 | - unsigned long SizeOfDecoderSpecificInfo, |
135 | - unsigned long *samplerate, unsigned char *channels); |
136 | +int8_t FAADAPI faacDecInit2(faacDecHandle hDecoder, uint8_t *pBuffer, |
137 | + uint32_t SizeOfDecoderSpecificInfo, |
138 | + uint32_t *samplerate, uint8_t *channels); |
139 | |
140 | /* Init the library for DRM */ |
141 | -char FAADAPI faacDecInitDRM(faacDecHandle hDecoder, unsigned long samplerate, |
142 | - unsigned char channels); |
143 | +int8_t FAADAPI faacDecInitDRM(faacDecHandle hDecoder, uint32_t samplerate, |
144 | + uint8_t channels); |
145 | |
146 | void FAADAPI faacDecPostSeekReset(faacDecHandle hDecoder, long frame); |
147 | |
148 | @@ -199,12 +203,12 @@ void FAADAPI faacDecClose(faacDecHandle |
149 | |
150 | void* FAADAPI faacDecDecode(faacDecHandle hDecoder, |
151 | faacDecFrameInfo *hInfo, |
152 | - unsigned char *buffer, |
153 | - unsigned long buffer_size); |
154 | + uint8_t *buffer, |
155 | + uint32_t buffer_size); |
156 | |
157 | -char FAADAPI AudioSpecificConfig(unsigned char *pBuffer, |
158 | - unsigned long buffer_size, |
159 | - mp4AudioSpecificConfig *mp4ASC); |
160 | +int8_t FAADAPI AudioSpecificConfig(uint8_t *pBuffer, |
161 | + uint32_t buffer_size, |
162 | + mp4AudioSpecificConfig *mp4ASC); |
163 | |
164 | #ifdef _WIN32 |
165 | #pragma pack(pop) |
166 | Index: faad2-2.0/libfaad/common.h |
167 | =================================================================== |
168 | --- faad2-2.0.orig/libfaad/common.h |
169 | +++ faad2-2.0/libfaad/common.h |
170 | @@ -197,8 +197,16 @@ typedef float float32_t; |
171 | #else |
172 | # if HAVE_STDINT_H |
173 | # include <stdint.h> |
174 | -# else |
175 | -/* we need these... */ |
176 | +# elif defined(__x86_64__) |
177 | +typedef unsigned long uint64_t; |
178 | +typedef unsigned int uint32_t; |
179 | +typedef unsigned short uint16_t; |
180 | +typedef unsigned char uint8_t; |
181 | +typedef long int64_t; |
182 | +typedef int int32_t; |
183 | +typedef short int16_t; |
184 | +typedef char int8_t; |
185 | +#else |
186 | typedef unsigned long long uint64_t; |
187 | typedef unsigned long uint32_t; |
188 | typedef unsigned short uint16_t; |
189 | Index: faad2-2.0/plugins/mpeg4ip/aa_file.cpp |
190 | =================================================================== |
191 | --- faad2-2.0.orig/plugins/mpeg4ip/aa_file.cpp |
192 | +++ faad2-2.0/plugins/mpeg4ip/aa_file.cpp |
193 | @@ -56,8 +56,8 @@ codec_data_t *aac_file_check (lib_messag |
194 | aac->m_buffer_size_max, |
195 | aac->m_ifile); |
196 | |
197 | - unsigned long freq; |
198 | - unsigned char chans; |
199 | + uint32_t freq; |
200 | + uint8_t chans; |
201 | |
202 | faacDecInit(aac->m_info, (unsigned char *)aac->m_buffer, |
203 | aac->m_buffer_size, &freq, &chans); |
204 | Index: faad2-2.0/plugins/mpeg4ip/faad2.cpp |
205 | =================================================================== |
206 | --- faad2-2.0.orig/plugins/mpeg4ip/faad2.cpp |
207 | +++ faad2-2.0/plugins/mpeg4ip/faad2.cpp |
208 | @@ -76,8 +76,8 @@ static codec_data_t *aac_codec_create (c |
209 | } |
210 | |
211 | aac->m_info = faacDecOpen(); |
212 | - unsigned long srate; |
213 | - unsigned char chan; |
214 | + uint32_t srate; |
215 | + uint8_t chan; |
216 | if ((userdata == NULL && fmtp == NULL) || |
217 | (faacDecInit2(aac->m_info, |
218 | (uint8_t *)userdata, |
219 | @@ -156,7 +156,7 @@ static int aac_decode (codec_data_t *ptr |
220 | void *userdata) |
221 | { |
222 | aac_codec_t *aac = (aac_codec_t *)ptr; |
223 | - unsigned long bytes_consummed; |
224 | + uint32_t bytes_consummed; |
225 | int bits = -1; |
226 | // struct timezone tz; |
227 | |
228 | @@ -188,8 +188,8 @@ static int aac_decode (codec_data_t *ptr |
229 | * If not initialized, do so. |
230 | */ |
231 | abort(); |
232 | - unsigned long freq; |
233 | - unsigned char chans; |
234 | + uint32_t freq; |
235 | + uint8_t chans; |
236 | |
237 | faacDecInit(aac->m_info, |
238 | (unsigned char *)buffer, |
239 | @@ -202,7 +202,7 @@ static int aac_decode (codec_data_t *ptr |
240 | } |
241 | |
242 | uint8_t *buff; |
243 | - unsigned long samples; |
244 | + uint32_t samples; |
245 | bytes_consummed = buflen; |
246 | //aa_message(LOG_DEBUG, aaclib, "decoding %d bits", buflen * 8); |
247 | faacDecFrameInfo frame_info; |
248 | @@ -237,7 +237,7 @@ static int aac_decode (codec_data_t *ptr |
249 | aac->m_vft->audio_configure(aac->m_ifptr, |
250 | aac->m_freq, |
251 | aac->m_chans, |
252 | - AUDIO_S16SYS, |
253 | + AUDIO_FMT_S16, |
254 | aac->m_output_frame_size); |
255 | uint8_t *now = aac->m_vft->audio_get_buffer(aac->m_ifptr); |
256 | aac->m_audio_inited = 1; |
257 | Index: faad2-2.0/plugins/xmms/src/libmp4.c |
258 | =================================================================== |
259 | --- faad2-2.0.orig/plugins/xmms/src/libmp4.c |
260 | +++ faad2-2.0/plugins/xmms/src/libmp4.c |
261 | @@ -22,6 +22,9 @@ |
262 | #define MP4_ABOUT "Written by ciberfred" |
263 | #define BUFFER_SIZE FAAD_MIN_STREAMSIZE*64 |
264 | |
265 | +extern void getMP4info(char* file); |
266 | +extern int getAACTrack(MP4FileHandle file); |
267 | + |
268 | static void mp4_init(void); |
269 | static void mp4_about(void); |
270 | static void mp4_play(char *); |
271 | @@ -116,14 +119,12 @@ static int mp4_isFile(char *filename) |
272 | |
273 | extention = strrchr(filename, '.'); |
274 | |
275 | - if (extention && |
276 | - (!strcasecmp(extention, ".mp4") || // official extention |
277 | - !strcasecmp(extention, ".m4a") || // Apple mp4 extention |
278 | - !strcasecmp(extention, ".aac") // old MPEG2/4-AAC extention |
279 | + if (extention) |
280 | + if( (!strcasecmp(extention, ".mp4") || // official extention |
281 | + !strcasecmp(extention, ".m4a") || // Apple mp4 extention |
282 | + !strcasecmp(extention, ".aac") // old MPEG2/4-AAC extention |
283 | )) |
284 | - { |
285 | - return (1); |
286 | - } |
287 | + return (1); |
288 | } |
289 | return(0); |
290 | } |