Subversion Repositories Kolibri OS

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
1696 serge 1
 
2
#define _SOUND_H_
3
4
 
5
extern "C"
6
{
7
#endif
8
9
 
10
#define PCM_ALL       0
11
12
 
13
#define PCM_RING      0x10000000
14
#define PCM_STATIC    0x20000000
15
#define PCM_FLOAT     0x40000000
16
#define PCM_FILTER    0x80000000
17
18
 
19
#define PCM_1_16_48   2
20
#define PCM_2_16_44   3
21
#define PCM_1_16_44   4
22
#define PCM_2_16_32   5
23
#define PCM_1_16_32   6
24
#define PCM_2_16_24   7
25
#define PCM_1_16_24   8
26
#define PCM_2_16_22   9
27
#define PCM_1_16_22  10
28
#define PCM_2_16_16  11
29
#define PCM_1_16_16  12
30
#define PCM_2_16_12  13
31
#define PCM_1_16_12  14
32
#define PCM_2_16_11  15
33
#define PCM_1_16_11  16
34
#define PCM_2_16_8   17
35
#define PCM_1_16_8   18
36
#define PCM_2_8_48   19
37
#define PCM_1_8_48   20
38
#define PCM_2_8_44   21
39
#define PCM_1_8_44   22
40
#define PCM_2_8_32   23
41
#define PCM_1_8_32   24
42
#define PCM_2_8_24   25
43
#define PCM_1_8_24   26
44
#define PCM_2_8_22   27
45
#define PCM_1_8_22   28
46
#define PCM_2_8_16   29
47
#define PCM_1_8_16   30
48
#define PCM_2_8_12   31
49
#define PCM_1_8_12   32
50
#define PCM_2_8_11   33
51
#define PCM_1_8_11   34
52
#define PCM_2_8_8    35
53
#define PCM_1_8_8    36
54
55
 
56
#define SND_CREATE_BUFF     1
57
#define SND_DESTROY_BUFF    2
58
#define SND_SETFORMAT       3
59
#define SND_GETFORMAT       4
60
#define SND_RESET           5
61
#define SND_SETPOS          6
62
#define SND_GETPOS          7
63
#define SND_SETBUFF         8
64
#define SND_OUT             9
65
#define SND_PLAY           10
66
#define SND_STOP           11
67
#define SND_SETVOLUME      12
68
#define SND_GETVOLUME      13
69
#define SND_SETPAN         14
70
#define SND_GETPAN         15
71
#define SND_GETBUFFSIZE    16
72
#define SND_GETFREESPACE   17
73
#define SND_SETTIMEBASE    18
74
#define SND_GETTIMESTAMP   19
75
76
 
77
78
 
79
{
80
    unsigned int   riff_id;
81
    unsigned int   riff_size;
82
    unsigned int   riff_format;
83
84
 
85
    unsigned int   fmt_size;
86
87
 
88
    unsigned short int nChannels;
89
    unsigned int   nSamplesPerSec;
90
    unsigned int   nAvgBytesPerSec;
91
    unsigned short int nBlockAlign;
92
    unsigned short int wBitsPerSample;
93
    unsigned int   data_id;
94
    unsigned int   data_size;
95
} WAVEHEADER;
96
97
 
98
99
 
100
101
 
102
int _stdcall  DestroyBuffer(SNDBUF hBuff);
103
104
 
105
int _stdcall  GetFormat(SNDBUF hBuff, unsigned int *format);
106
107
 
108
int _stdcall  SetBufferPos(SNDBUF hBuff, int offset);
109
int _stdcall  GetBufferPos(SNDBUF hBuff, int *offset);
110
int _stdcall  GetBufferSize(SNDBUF hBuff, int *size);
111
int _stdcall  GetBufferFree(SNDBUF hBuff, int *free);
112
113
 
114
                        int offs, int size);
115
int _stdcall  WaveOut(SNDBUF hBuff,void *buff, int size);
116
int _stdcall  PlayBuffer(SNDBUF hBuff,unsigned int flags);
117
int _stdcall  StopBuffer(SNDBUF hBuff);
118
119
 
120
int _stdcall  GetVolume(SNDBUF hBuff, int *left, int *right);
121
int _stdcall  SetPan(SNDBUF hBuff, int pan);
122
int _stdcall  GetPan(SNDBUF hBuff, int *pan);
123
124
 
125
int _stdcall  SetMasterVol(int vol);
126
127
 
128
int _stdcall  GetTimeStamp(SNDBUF hBuff, double *stamp);
129
130
 
131
132
 
133
extern "C"
134
}
135
#endif
136
137
 
138