| [5642] | 1 | /* $Id: daudio.h,v 1.5 2001-04-30 21:05:51 sandervl Exp $ */
 | 
|---|
| [5360] | 2 | #ifndef __DAUDIO_H__
 | 
|---|
 | 3 | #define __DAUDIO_H__
 | 
|---|
 | 4 | 
 | 
|---|
| [5369] | 5 | #ifndef FAR
 | 
|---|
 | 6 | #define FAR
 | 
|---|
 | 7 | #endif
 | 
|---|
 | 8 | 
 | 
|---|
| [5360] | 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
 | 
|---|
| [5604] | 24 | #define DAUDIO_QUERYCAPS                0x4D
 | 
|---|
 | 25 | #define DAUDIO_QUERYVERSION             0x4E
 | 
|---|
| [5642] | 26 | #define DAUDIO_SETPROPERTY              0x4F
 | 
|---|
| [5360] | 27 | 
 | 
|---|
| [5604] | 28 | #define DAUDIO_VERSION                  0x00000002  //highword = major, lowword = minor version
 | 
|---|
 | 29 | 
 | 
|---|
| [5360] | 30 | typedef struct {
 | 
|---|
 | 31 |   union
 | 
|---|
 | 32 |     {
 | 
|---|
 | 33 |     struct
 | 
|---|
 | 34 |       {
 | 
|---|
| [5377] | 35 |       ULONG   VolumeL;          // left volume (0..100)
 | 
|---|
 | 36 |       ULONG   VolumeR;          // right volume (0..100)
 | 
|---|
| [5360] | 37 |       } Vol;
 | 
|---|
 | 38 |     struct 
 | 
|---|
 | 39 |       {
 | 
|---|
 | 40 |       ULONG   lpBuffer;
 | 
|---|
 | 41 |       ULONG   ulBufferLength;
 | 
|---|
 | 42 |       } Buffer;
 | 
|---|
 | 43 |     struct 
 | 
|---|
 | 44 |       {
 | 
|---|
 | 45 |       ULONG   ulCurrentPos;
 | 
|---|
| [5642] | 46 |       ULONG   ulWritePos;
 | 
|---|
| [5360] | 47 |       } Pos;
 | 
|---|
 | 48 |     struct 
 | 
|---|
 | 49 |       {
 | 
|---|
 | 50 |       ULONG   hSemaphore;
 | 
|---|
 | 51 |       } Thread;
 | 
|---|
| [5604] | 52 |     struct 
 | 
|---|
 | 53 |       {
 | 
|---|
 | 54 |       ULONG   ulVersion;
 | 
|---|
 | 55 |       } Version;
 | 
|---|
| [5642] | 56 |     struct 
 | 
|---|
 | 57 |       {
 | 
|---|
 | 58 |       ULONG   type;
 | 
|---|
 | 59 |       ULONG   value;
 | 
|---|
 | 60 |       } SetProperty;
 | 
|---|
| [5360] | 61 |     };
 | 
|---|
 | 62 |   
 | 
|---|
 | 63 | } DAUDIO_CMD, FAR *LPDAUDIO_CMD;
 | 
|---|
 | 64 | 
 | 
|---|
| [5604] | 65 | #define DAUDIOCAPS_PRIMARYMONO          0x00000001
 | 
|---|
 | 66 | #define DAUDIOCAPS_PRIMARYSTEREO        0x00000002
 | 
|---|
 | 67 | #define DAUDIOCAPS_PRIMARY8BIT          0x00000004
 | 
|---|
 | 68 | #define DAUDIOCAPS_PRIMARY16BIT         0x00000008
 | 
|---|
 | 69 | #define DAUDIOCAPS_CONTINUOUSRATE       0x00000010
 | 
|---|
 | 70 | #define DAUDIOCAPS_EMULDRIVER           0x00000020
 | 
|---|
 | 71 | #define DAUDIOCAPS_CERTIFIED            0x00000040
 | 
|---|
 | 72 | #define DAUDIOCAPS_SECONDARYMONO        0x00000100
 | 
|---|
 | 73 | #define DAUDIOCAPS_SECONDARYSTEREO      0x00000200
 | 
|---|
 | 74 | #define DAUDIOCAPS_SECONDARY8BIT        0x00000400
 | 
|---|
 | 75 | #define DAUDIOCAPS_SECONDARY16BIT       0x00000800
 | 
|---|
 | 76 | 
 | 
|---|
 | 77 | typedef struct _DAUDIOCAPS
 | 
|---|
 | 78 | {
 | 
|---|
 | 79 |     ULONG       dwSize;
 | 
|---|
 | 80 |     ULONG       dwFlags;
 | 
|---|
 | 81 |     ULONG       dwMinSecondarySampleRate;
 | 
|---|
 | 82 |     ULONG       dwMaxSecondarySampleRate;
 | 
|---|
 | 83 |     ULONG       dwPrimaryBuffers;
 | 
|---|
 | 84 |     ULONG       dwMaxHwMixingAllBuffers;
 | 
|---|
 | 85 |     ULONG       dwMaxHwMixingStaticBuffers;
 | 
|---|
 | 86 |     ULONG       dwMaxHwMixingStreamingBuffers;
 | 
|---|
 | 87 |     ULONG       dwFreeHwMixingAllBuffers;
 | 
|---|
 | 88 |     ULONG       dwFreeHwMixingStaticBuffers;
 | 
|---|
 | 89 |     ULONG       dwFreeHwMixingStreamingBuffers;
 | 
|---|
 | 90 |     ULONG       dwMaxHw3DAllBuffers;
 | 
|---|
 | 91 |     ULONG       dwMaxHw3DStaticBuffers;
 | 
|---|
 | 92 |     ULONG       dwMaxHw3DStreamingBuffers;
 | 
|---|
 | 93 |     ULONG       dwFreeHw3DAllBuffers;
 | 
|---|
 | 94 |     ULONG       dwFreeHw3DStaticBuffers;
 | 
|---|
 | 95 |     ULONG       dwFreeHw3DStreamingBuffers;
 | 
|---|
 | 96 |     ULONG       dwTotalHwMemBytes;
 | 
|---|
 | 97 |     ULONG       dwFreeHwMemBytes;
 | 
|---|
 | 98 |     ULONG       dwMaxContigFreeHwMemBytes;
 | 
|---|
 | 99 |     ULONG       dwUnlockTransferRateHwBuffers;
 | 
|---|
 | 100 |     ULONG       dwPlayCpuOverheadSwBuffers;
 | 
|---|
 | 101 |     ULONG       dwReserved1;
 | 
|---|
 | 102 |     ULONG       dwReserved2;
 | 
|---|
 | 103 | } DAUDIO_CAPS, FAR *LPDAUDIO_CAPS;
 | 
|---|
 | 104 | 
 | 
|---|
 | 105 | #define SBLIVECAPS_MINSAMPLERATE        5000
 | 
|---|
 | 106 | #define SBLIVECAPS_MAXSAMPLERATE        48000
 | 
|---|
 | 107 | #define SBLIVECAPS_MAXSTREAMS           32
 | 
|---|
 | 108 | 
 | 
|---|
| [5642] | 109 | 
 | 
|---|
 | 110 | // property types
 | 
|---|
 | 111 | #define PROPERTY_LOOPING        0
 | 
|---|
 | 112 | #define PROPERTY_FREQUENCY      1
 | 
|---|
 | 113 | #define PROPERTY_VOLUME         2
 | 
|---|
 | 114 | #define PROPERTY_BALANCE        3
 | 
|---|
 | 115 | #define PROPERTY_MASTERVOL      4
 | 
|---|
 | 116 | #define PROPERTY_INPUTSRC       5
 | 
|---|
 | 117 | #define PROPERTY_INPUTGAIN      6
 | 
|---|
 | 118 | 
 | 
|---|
| [5360] | 119 | #endif //__DAUDIO_H__
 | 
|---|