Rev 368 | Rev 376 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 368 | Rev 374 | ||
---|---|---|---|
1 | #ifndef _SOUND_H_ |
1 | #ifndef _SOUND_H_ |
2 | #define _SOUND_H_ |
2 | #define _SOUND_H_ |
3 | 3 | ||
4 | #ifdef __cplusplus |
4 | #ifdef __cplusplus |
5 | extern "C" |
5 | extern "C" |
6 | { |
6 | { |
7 | #endif |
7 | #endif |
8 | 8 | ||
9 | #define SOUND_VERSION 5 |
9 | #define SOUND_VERSION 5 |
10 | 10 | ||
11 | #define PCM_ALL 0 |
11 | #define PCM_ALL 0 |
12 | #define PCM_STATIC 0x80000000 |
12 | |
- | 13 | #define PCM_OUT 0x08000000 |
|
- | 14 | #define PCM_RING 0x10000000 |
|
- | 15 | #define PCM_STATIC 0x20000000 |
|
13 | #define PCM_FILTER 0x40000000 |
16 | #define PCM_FLOAT 0x40000000 |
14 | #define PCM_FLOAT 0x20000000 |
17 | #define PCM_FILTER 0x80000000 |
15 | 18 | ||
16 | #define PCM_2_16_48 1 |
19 | #define PCM_2_16_48 1 |
17 | #define PCM_1_16_48 2 |
20 | #define PCM_1_16_48 2 |
18 | #define PCM_2_16_44 3 |
21 | #define PCM_2_16_44 3 |
19 | #define PCM_1_16_44 4 |
22 | #define PCM_1_16_44 4 |
20 | #define PCM_2_16_32 5 |
23 | #define PCM_2_16_32 5 |
21 | #define PCM_1_16_32 6 |
24 | #define PCM_1_16_32 6 |
22 | #define PCM_2_16_24 7 |
25 | #define PCM_2_16_24 7 |
23 | #define PCM_1_16_24 8 |
26 | #define PCM_1_16_24 8 |
24 | #define PCM_2_16_22 9 |
27 | #define PCM_2_16_22 9 |
25 | #define PCM_1_16_22 10 |
28 | #define PCM_1_16_22 10 |
26 | #define PCM_2_16_16 11 |
29 | #define PCM_2_16_16 11 |
27 | #define PCM_1_16_16 12 |
30 | #define PCM_1_16_16 12 |
28 | #define PCM_2_16_12 13 |
31 | #define PCM_2_16_12 13 |
29 | #define PCM_1_16_12 14 |
32 | #define PCM_1_16_12 14 |
30 | #define PCM_2_16_11 15 |
33 | #define PCM_2_16_11 15 |
31 | #define PCM_1_16_11 16 |
34 | #define PCM_1_16_11 16 |
32 | #define PCM_2_16_8 17 |
35 | #define PCM_2_16_8 17 |
33 | #define PCM_1_16_8 18 |
36 | #define PCM_1_16_8 18 |
34 | #define PCM_2_8_48 19 |
37 | #define PCM_2_8_48 19 |
35 | #define PCM_1_8_48 20 |
38 | #define PCM_1_8_48 20 |
36 | #define PCM_2_8_44 21 |
39 | #define PCM_2_8_44 21 |
37 | #define PCM_1_8_44 22 |
40 | #define PCM_1_8_44 22 |
38 | #define PCM_2_8_32 23 |
41 | #define PCM_2_8_32 23 |
39 | #define PCM_1_8_32 24 |
42 | #define PCM_1_8_32 24 |
40 | #define PCM_2_8_24 25 |
43 | #define PCM_2_8_24 25 |
41 | #define PCM_1_8_24 26 |
44 | #define PCM_1_8_24 26 |
42 | #define PCM_2_8_22 27 |
45 | #define PCM_2_8_22 27 |
43 | #define PCM_1_8_22 28 |
46 | #define PCM_1_8_22 28 |
44 | #define PCM_2_8_16 29 |
47 | #define PCM_2_8_16 29 |
45 | #define PCM_1_8_16 30 |
48 | #define PCM_1_8_16 30 |
46 | #define PCM_2_8_12 31 |
49 | #define PCM_2_8_12 31 |
47 | #define PCM_1_8_12 32 |
50 | #define PCM_1_8_12 32 |
48 | #define PCM_2_8_11 33 |
51 | #define PCM_2_8_11 33 |
49 | #define PCM_1_8_11 34 |
52 | #define PCM_1_8_11 34 |
50 | #define PCM_2_8_8 35 |
53 | #define PCM_2_8_8 35 |
51 | #define PCM_1_8_8 36 |
54 | #define PCM_1_8_8 36 |
52 | 55 | ||
53 | #define SRV_GETVERSION 0 |
56 | #define SRV_GETVERSION 0 |
54 | #define SND_CREATE_BUFF 1 |
57 | #define SND_CREATE_BUFF 1 |
55 | #define SND_DESTROY_BUFF 2 |
58 | #define SND_DESTROY_BUFF 2 |
56 | #define SND_SETFORMAT 3 |
59 | #define SND_SETFORMAT 3 |
57 | #define SND_RESET 4 |
60 | #define SND_GETFORMAT 4 |
58 | #define SND_SETPOS 5 |
61 | #define SND_RESET 5 |
59 | #define SND_SETBUFF 6 |
62 | #define SND_SETPOS 6 |
60 | #define SND_SETVOLUME 7 |
63 | #define SND_GETPOS 7 |
61 | #define SND_GETVOLUME 8 |
64 | #define SND_SETBUFF 8 |
62 | #define SND_OUT 9 |
65 | #define SND_OUT 9 |
63 | #define SND_PLAY 10 |
66 | #define SND_PLAY 10 |
64 | #define SND_STOP 11 |
67 | #define SND_STOP 11 |
65 | 68 | #define SND_SETVOLUME 12 |
|
- | 69 | #define SND_GETVOLUME 13 |
|
- | 70 | #define SND_SETPAN 14 |
|
- | 71 | #define SND_GETPAN 15 |
|
- | 72 | #define SND_GETBUFFSIZE 16 |
|
- | 73 | ||
- | 74 | #define PLAY_SYNC 0x80000000 |
|
- | 75 | ||
66 | typedef unsigned int SNDBUF; |
76 | typedef unsigned int SNDBUF; |
67 | 77 | ||
68 | int _stdcall InitSound(); |
78 | int _stdcall InitSound(); |
69 | SNDBUF _stdcall CreateBuffer(unsigned int format,int size); |
79 | |
- | 80 | SNDBUF _stdcall CreateBuffer(unsigned int format,int size); |
|
70 | int _stdcall DestroyBuffer(SNDBUF hBuff); |
81 | int _stdcall DestroyBuffer(SNDBUF hBuff); |
71 | int _stdcall SetBuffer(SNDBUF hBuff,void* buff, |
82 | |
72 | int offs, int size); |
- | |
73 | int _stdcall SetFormat(SNDBUF hBuff, unsigned int format); |
- | |
- | 83 | int _stdcall SetFormat(SNDBUF hBuff, unsigned int format); |
|
74 | int _stdcall ResetBuffer(SNDBUF hBuff, unsigned int flags); |
84 | int _stdcall GetFormat(SNDBUF hBuff); |
- | 85 | ||
- | 86 | int _stdcall ResetBuffer(SNDBUF hBuff, unsigned int flags); |
|
75 | int _stdcall SetBufferPos(SNDBUF hBuff, int offset); |
87 | int _stdcall SetBufferPos(SNDBUF hBuff, int offset); |
76 | int _stdcall SetVolume(SNDBUF hBuff, int left, int right); |
88 | int _stdcall GetBufferPos(SNDBUF hBuff); |
77 | int _stdcall GetVolume(SNDBUF hBuff, int *left, int *right); |
89 | int _stdcall GetBufferSize(SNDBUF hBuff); |
78 | int _stdcall SetPan(SNDBUF hBuff, int pan); |
- | |
79 | 90 | ||
- | 91 | int _stdcall SetBuffer(SNDBUF hBuff,void* buff, |
|
- | 92 | int offs, int size); |
|
80 | int _stdcall WaveOut(SNDBUF hBuff,void *buff, int size); |
93 | int _stdcall WaveOut(SNDBUF hBuff,void *buff, int size); |
81 | - | ||
82 | int _stdcall PlayBuffer(SNDBUF hBuff); |
94 | int _stdcall PlayBuffer(SNDBUF hBuff,unsigned int flags); |
83 | int _stdcall StopBuffer(SNDBUF hBuff); |
95 | int _stdcall StopBuffer(SNDBUF hBuff); |
84 | - | ||
85 | typedef struct |
96 | |
86 | { unsigned int riff_id; |
97 | int _stdcall SetVolume(SNDBUF hBuff, int left, int right); |
87 | unsigned int riff_size; |
98 | int _stdcall GetVolume(SNDBUF hBuff, int *left, int *right); |
88 | unsigned int riff_format; |
- | |
89 | 99 | int _stdcall SetPan(SNDBUF hBuff, int pan); |
|
90 | unsigned int fmt_id; |
- | |
91 | unsigned int fmt_size; |
100 | int _stdcall GetPan(SNDBUF hBuff); |
92 | 101 | ||
93 | unsigned short int wFormatTag; |
- | |
94 | unsigned short int nChannels; |
- | |
95 | unsigned int nSamplesPerSec; |
- | |
96 | unsigned int nAvgBytesPerSec; |
- | |
97 | unsigned short int nBlockAlign; |
102 | int _stdcall GetMasterVol(int* vol); |
98 | unsigned short int wBitsPerSample; |
- | |
99 | unsigned int data_id; |
- | |
100 | unsigned int data_size; |
- | |
101 | } WAVEHEADER; |
103 | int _stdcall SetMasterVol(int vol); |
102 | 104 | ||
103 | unsigned int _stdcall test_wav(WAVEHEADER *hdr); |
105 | unsigned int _stdcall test_wav(WAVEHEADER *hdr); |
104 | 106 | ||
105 | #ifdef __cplusplus |
107 | #ifdef __cplusplus |
106 | extern "C" |
108 | extern "C" |
107 | } |
109 | } |
108 | #endif |
110 | #endif |
109 | 111 | ||
110 | #endif //_SOUND_H_ |
112 | #endif //_SOUND_H_ |