It is possible for a driver to receive a DRV_DISABLE message while it is in the process of sending or receiving audio data. Audio device drivers should follow the behavior specified in the following table when they receive a DRV_DISABLE/DRV_ENABLE message pair:
| Driver Type | Disable/Enable Behavior |
|---|---|
| waveform output | As if the driver were paused with a WODM_PAUSE message and then restarted with a WODM_RESTART message. |
| waveform input | As if the driver were stopped with a WIDM_STOP message and then restarted with a WIDM_START message. |
| MIDI output | If the driver is asynchronous, stop output when disabled and continue when reenabled. |
| MIDI input | As if the driver were stopped with a MIDM_STOP message and then restarted with a MIDM_START message. |
Most audio device drivers will be interrupt-driven. For example, a waveform output device interrupts when the device needs another data block. A MIDI input device interrupts when the device receives a MIDI event at its input port.