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
);
31 typedef MIXER_STATUS(*PMIXER_DEVICE_CONTROL
)(
33 IN ULONG dwIoControlCode
,
35 IN ULONG nInBufferSize
,
36 OUT PVOID lpOutBuffer
,
38 PULONG lpBytesReturned
);
40 typedef MIXER_STATUS(*PMIXER_OPEN
)(
41 IN LPCWSTR DevicePath
,
44 typedef MIXER_STATUS(*PMIXER_CLOSE
)(
47 typedef VOID (*PMIXER_EVENT
)(
57 PMIXER_DEVICE_CONTROL Control
;
61 }MIXER_CONTEXT
, *PMIXER_CONTEXT
;
69 IN PMIXER_CONTEXT MixerContext
,
70 IN PMIXER_ENUM EnumFunction
,
71 IN PVOID EnumContext
);
76 IN PMIXER_CONTEXT MixerContext
);
79 MMixerGetCapabilities(
80 IN PMIXER_CONTEXT MixerContext
,
82 OUT MIXERCAPSW MixerCaps
);
86 IN PMIXER_CONTEXT MixerContext
,
88 IN PMIXER_EVENT MixerEventRoutine
,
89 OUT PHANDLE MixerHandle
);
93 IN HANDLE MixerHandle
,
95 OUT LPMIXERLINEW MixerLine
);
98 MMixerGetLineControls(
99 IN HANDLE MixerHandle
,
101 OUT LPMIXERLINECONTROLS MixerLineControls
);
104 MMixerSetControlDetails(
105 IN HANDLE MixerHandle
,
107 OUT LPMIXERCONTROLDETAILS MixerControlDetails
);
110 MMixerGetControlDetails(
111 IN HANDLE MixerHandle
,
113 OUT LPMIXERCONTROLDETAILS MixerControlDetails
);