Mercurial > SDL_sound_CoreAudio
annotate decoders/mpglib/mpglib_sdlsound.h @ 447:c98a34c00069
Fixed MIDI decoding on bigendian systems.
author | Ryan C. Gordon <icculus@icculus.org> |
---|---|
date | Tue, 05 Aug 2003 10:07:20 +0000 |
parents | 5b00e43ec23c |
children |
rev | line source |
---|---|
441
5b00e43ec23c
Patches to make SDL_sound more Visual C happy.
Ryan C. Gordon <icculus@icculus.org>
parents:
292
diff
changeset
|
1 |
5b00e43ec23c
Patches to make SDL_sound more Visual C happy.
Ryan C. Gordon <icculus@icculus.org>
parents:
292
diff
changeset
|
2 #ifndef _INCLUDE_MPGLIB_SDLSOUND_H_ |
5b00e43ec23c
Patches to make SDL_sound more Visual C happy.
Ryan C. Gordon <icculus@icculus.org>
parents:
292
diff
changeset
|
3 #define _INCLUDE_MPGLIB_SDLSOUND_H_ |
5b00e43ec23c
Patches to make SDL_sound more Visual C happy.
Ryan C. Gordon <icculus@icculus.org>
parents:
292
diff
changeset
|
4 |
5b00e43ec23c
Patches to make SDL_sound more Visual C happy.
Ryan C. Gordon <icculus@icculus.org>
parents:
292
diff
changeset
|
5 #ifdef _MSC_VER |
5b00e43ec23c
Patches to make SDL_sound more Visual C happy.
Ryan C. Gordon <icculus@icculus.org>
parents:
292
diff
changeset
|
6 #define snprintf _snprintf |
5b00e43ec23c
Patches to make SDL_sound more Visual C happy.
Ryan C. Gordon <icculus@icculus.org>
parents:
292
diff
changeset
|
7 #endif |
261 | 8 |
9 struct buf { | |
292
a9e211c3faa4
Cleanups and audio format determination.
Ryan C. Gordon <icculus@icculus.org>
parents:
261
diff
changeset
|
10 unsigned char *pnt; |
261 | 11 long size; |
12 long pos; | |
292
a9e211c3faa4
Cleanups and audio format determination.
Ryan C. Gordon <icculus@icculus.org>
parents:
261
diff
changeset
|
13 struct buf *next; |
a9e211c3faa4
Cleanups and audio format determination.
Ryan C. Gordon <icculus@icculus.org>
parents:
261
diff
changeset
|
14 struct buf *prev; |
261 | 15 }; |
16 | |
17 struct framebuf { | |
18 struct buf *buf; | |
19 long pos; | |
20 struct frame *next; | |
21 struct frame *prev; | |
22 }; | |
23 | |
24 struct mpstr { | |
25 struct buf *head,*tail; | |
26 int bsize; | |
27 int framesize; | |
292
a9e211c3faa4
Cleanups and audio format determination.
Ryan C. Gordon <icculus@icculus.org>
parents:
261
diff
changeset
|
28 int fsizeold; |
261 | 29 struct frame fr; |
292
a9e211c3faa4
Cleanups and audio format determination.
Ryan C. Gordon <icculus@icculus.org>
parents:
261
diff
changeset
|
30 unsigned char bsspace[2][MAXFRAMESIZE+512]; /* MAXFRAMESIZE */ |
261 | 31 real hybrid_block[2][2][SBLIMIT*SSLIMIT]; |
32 int hybrid_blc[2]; | |
33 unsigned long header; | |
34 int bsnum; | |
35 real synth_buffs[2][2][0x110]; | |
292
a9e211c3faa4
Cleanups and audio format determination.
Ryan C. Gordon <icculus@icculus.org>
parents:
261
diff
changeset
|
36 int synth_bo; |
261 | 37 }; |
38 | |
39 #ifndef BOOL | |
40 #define BOOL int | |
41 #endif | |
42 | |
43 #define MP3_ERR -1 | |
44 #define MP3_OK 0 | |
45 #define MP3_NEED_MORE 1 | |
46 | |
47 | |
48 #ifdef __cplusplus | |
49 extern "C" { | |
50 #endif | |
51 | |
52 BOOL InitMP3(struct mpstr *mp); | |
53 int decodeMP3(struct mpstr *mp,char *inmemory,int inmemsize, | |
292
a9e211c3faa4
Cleanups and audio format determination.
Ryan C. Gordon <icculus@icculus.org>
parents:
261
diff
changeset
|
54 char *outmemory,int outmemsize,int *done); |
261 | 55 void ExitMP3(struct mpstr *mp); |
56 | |
57 #ifdef __cplusplus | |
58 } | |
59 #endif | |
60 | |
441
5b00e43ec23c
Patches to make SDL_sound more Visual C happy.
Ryan C. Gordon <icculus@icculus.org>
parents:
292
diff
changeset
|
61 #endif |
261 | 62 |
441
5b00e43ec23c
Patches to make SDL_sound more Visual C happy.
Ryan C. Gordon <icculus@icculus.org>
parents:
292
diff
changeset
|
63 |