User-Mode Audio Driver Entry Points

Like all installable user-mode drivers, user-mode audio drivers must export a DriverProc entry point and support the standard driver messages. Audio drivers typically ignore the DRV_OPEN standard message.

Audio drivers must also export one or more of the following entry points:

auxMessage

Entry point for auxiliary audio drivers.

midMessage

Entry point for MIDI input drivers.

modMessage

Entry point for MIDI output drivers.

mxdMessage

Entry point for mixer drivers.

widMessage

Entry point for waveform input drivers.

wodMessage

Entry point for waveform output drivers.

Like the DriverProc entry point, these additional entry points are implemented as functions that receive and process messages. Applications control multimedia device operations by calling multimedia API functions, which are described in the Win32 SDK and defined in winmm.dll. Code within winmm.dll translates each API function call into a call to a driver entry point, and includes one of the user-mode audio driver messages. For example, when an application calls the Win32 WaveOutOpen function, winmm.dll calls the appropriate user-mode driver’s wodMessage entry point, passing a WODM_OPEN message.