source: trunk/include/daudio.h@ 5613

Last change on this file since 5613 was 5604, checked in by sandervl, 24 years ago

header updates

File size: 2.9 KB
Line 
1/* $Id: daudio.h,v 1.4 2001-04-27 17:34:51 sandervl Exp $ */
2#ifndef __DAUDIO_H__
3#define __DAUDIO_H__
4
5#ifndef FAR
6#define FAR
7#endif
8
9#define DAUDIO_IOCTL_CAT 0x91
10
11#define DAUDIO_OPEN 0x40
12#define DAUDIO_CLOSE 0x41
13#define DAUDIO_QUERYFORMAT 0x42
14#define DAUDIO_SETVOLUME 0x43
15#define DAUDIO_GETVOLUME 0x44
16#define DAUDIO_START 0x45
17#define DAUDIO_STOP 0x46
18#define DAUDIO_PAUSE 0x47
19#define DAUDIO_RESUME 0x48
20#define DAUDIO_GETPOS 0x49
21#define DAUDIO_ADDBUFFER 0x4A
22#define DAUDIO_REGISTER_THREAD 0x4B
23#define DAUDIO_DEREGISTER_THREAD 0x4C
24#define DAUDIO_QUERYCAPS 0x4D
25#define DAUDIO_QUERYVERSION 0x4E
26#define DAUDIO_ADDLOOPINGBUFFER 0x4F
27
28#define DAUDIO_VERSION 0x00000002 //highword = major, lowword = minor version
29
30typedef struct {
31 union
32 {
33 struct
34 {
35 ULONG VolumeL; // left volume (0..100)
36 ULONG VolumeR; // right volume (0..100)
37 } Vol;
38 struct
39 {
40 ULONG lpBuffer;
41 ULONG ulBufferLength;
42 } Buffer;
43 struct
44 {
45 ULONG lpBuffer;
46 ULONG ulBufferLength;
47 } LoopingBuffer;
48 struct
49 {
50 ULONG ulCurrentPos;
51 } Pos;
52 struct
53 {
54 ULONG hSemaphore;
55 } Thread;
56 struct
57 {
58 ULONG ulVersion;
59 } Version;
60 };
61
62} DAUDIO_CMD, FAR *LPDAUDIO_CMD;
63
64#define DAUDIOCAPS_PRIMARYMONO 0x00000001
65#define DAUDIOCAPS_PRIMARYSTEREO 0x00000002
66#define DAUDIOCAPS_PRIMARY8BIT 0x00000004
67#define DAUDIOCAPS_PRIMARY16BIT 0x00000008
68#define DAUDIOCAPS_CONTINUOUSRATE 0x00000010
69#define DAUDIOCAPS_EMULDRIVER 0x00000020
70#define DAUDIOCAPS_CERTIFIED 0x00000040
71#define DAUDIOCAPS_SECONDARYMONO 0x00000100
72#define DAUDIOCAPS_SECONDARYSTEREO 0x00000200
73#define DAUDIOCAPS_SECONDARY8BIT 0x00000400
74#define DAUDIOCAPS_SECONDARY16BIT 0x00000800
75
76typedef struct _DAUDIOCAPS
77{
78 ULONG dwSize;
79 ULONG dwFlags;
80 ULONG dwMinSecondarySampleRate;
81 ULONG dwMaxSecondarySampleRate;
82 ULONG dwPrimaryBuffers;
83 ULONG dwMaxHwMixingAllBuffers;
84 ULONG dwMaxHwMixingStaticBuffers;
85 ULONG dwMaxHwMixingStreamingBuffers;
86 ULONG dwFreeHwMixingAllBuffers;
87 ULONG dwFreeHwMixingStaticBuffers;
88 ULONG dwFreeHwMixingStreamingBuffers;
89 ULONG dwMaxHw3DAllBuffers;
90 ULONG dwMaxHw3DStaticBuffers;
91 ULONG dwMaxHw3DStreamingBuffers;
92 ULONG dwFreeHw3DAllBuffers;
93 ULONG dwFreeHw3DStaticBuffers;
94 ULONG dwFreeHw3DStreamingBuffers;
95 ULONG dwTotalHwMemBytes;
96 ULONG dwFreeHwMemBytes;
97 ULONG dwMaxContigFreeHwMemBytes;
98 ULONG dwUnlockTransferRateHwBuffers;
99 ULONG dwPlayCpuOverheadSwBuffers;
100 ULONG dwReserved1;
101 ULONG dwReserved2;
102} DAUDIO_CAPS, FAR *LPDAUDIO_CAPS;
103
104#define SBLIVECAPS_MINSAMPLERATE 5000
105#define SBLIVECAPS_MAXSAMPLERATE 48000
106#define SBLIVECAPS_MAXSTREAMS 32
107
108#endif //__DAUDIO_H__
Note: See TracBrowser for help on using the repository browser.