7 MM_STATUS_NOTINITIALIZED
,
8 MM_STATUS_NOT_IMPLEMENTED
,
9 MM_STATUS_NO_MORE_DEVICES
,
10 MM_STATUS_MORE_ENTRIES
,
11 MM_STATUS_INVALID_PARAMETER
,
12 MM_STATUS_UNSUCCESSFUL
,
19 typedef PVOID (*PMIXER_ALLOC
)(
20 IN ULONG NumberOfBytes
);
22 typedef VOID (*PMIXER_FREE
)(
25 typedef MIXER_STATUS (*PMIXER_ENUM
)(
28 OUT LPWSTR
* DeviceName
,
29 OUT PHANDLE OutHandle
,
30 OUT PHANDLE OutDevInterfaceKey
);
32 typedef MIXER_STATUS(*PMIXER_DEVICE_CONTROL
)(
34 IN ULONG dwIoControlCode
,
36 IN ULONG nInBufferSize
,
37 OUT PVOID lpOutBuffer
,
39 PULONG lpBytesReturned
);
41 typedef MIXER_STATUS(*PMIXER_OPEN
)(
45 typedef MIXER_STATUS(*PMIXER_CLOSE
)(
48 typedef MIXER_STATUS(*PMIXER_CLOSEKEY
)(
51 typedef VOID (*PMIXER_EVENT
)(
54 typedef VOID (*PMIXER_COPY
)(
59 typedef MIXER_STATUS(*PMIXER_QUERY_KEY_VALUE
)(
62 OUT PVOID
* ResultBuffer
,
63 OUT PULONG ResultLength
,
66 typedef MIXER_STATUS(*PMIXER_OPEN_KEY
)(
69 IN ULONG DesiredAccess
,
72 typedef PVOID (*PMIXER_ALLOC_EVENT_DATA
)(
75 typedef VOID (*PMIXER_FREE_EVENT_DATA
)(
84 PMIXER_DEVICE_CONTROL Control
;
89 PMIXER_OPEN_KEY OpenKey
;
90 PMIXER_QUERY_KEY_VALUE QueryKeyValue
;
91 PMIXER_CLOSEKEY CloseKey
;
92 PMIXER_ALLOC_EVENT_DATA AllocEventData
;
93 PMIXER_FREE_EVENT_DATA FreeEventData
;
94 }MIXER_CONTEXT
, *PMIXER_CONTEXT
;
98 IN PMIXER_CONTEXT MixerContext
,
99 IN PMIXER_ENUM EnumFunction
,
100 IN PVOID EnumContext
);
104 IN PMIXER_CONTEXT MixerContext
);
107 MMixerGetWaveInCount(
108 IN PMIXER_CONTEXT MixerContext
);
111 MMixerGetWaveOutCount(
112 IN PMIXER_CONTEXT MixerContext
);
116 MMixerGetCapabilities(
117 IN PMIXER_CONTEXT MixerContext
,
119 OUT LPMIXERCAPSW MixerCaps
);
123 IN PMIXER_CONTEXT MixerContext
,
126 IN PMIXER_EVENT MixerEventRoutine
,
127 OUT PHANDLE MixerHandle
);
131 IN PMIXER_CONTEXT MixerContext
,
132 IN HANDLE MixerHandle
,
134 OUT LPMIXERLINEW MixerLine
);
137 MMixerGetLineControls(
138 IN PMIXER_CONTEXT MixerContext
,
139 IN HANDLE MixerHandle
,
141 OUT LPMIXERLINECONTROLSW MixerLineControls
);
144 MMixerSetControlDetails(
145 IN PMIXER_CONTEXT MixerContext
,
146 IN HANDLE MixerHandle
,
148 OUT LPMIXERCONTROLDETAILS MixerControlDetails
);
151 MMixerGetControlDetails(
152 IN PMIXER_CONTEXT MixerContext
,
153 IN HANDLE MixerHandle
,
155 OUT LPMIXERCONTROLDETAILS MixerControlDetails
);
158 MMixerWaveOutCapabilities(
159 IN PMIXER_CONTEXT MixerContext
,
160 IN ULONG DeviceIndex
,
161 OUT LPWAVEOUTCAPSW Caps
);
164 MMixerWaveInCapabilities(
165 IN PMIXER_CONTEXT MixerContext
,
166 IN ULONG DeviceIndex
,
167 OUT LPWAVEINCAPSW Caps
);
171 IN PMIXER_CONTEXT MixerContext
,
172 IN ULONG DeviceIndex
,
174 IN LPWAVEFORMATEX WaveFormat
,
175 OUT PHANDLE PinHandle
);
179 IN PMIXER_CONTEXT MixerContext
,