Microsoft DirectX 8.0 (C++)

Audio Device Testing

Microphone setup is supported by the IDirectPlayVoiceTest interface. This interface has one method, IDirectPlayVoiceTest::CheckAudioSetup, that can be used to run the test wizard. This wizard confirms that your system properly supports full duplex operation and ensures your microphone and playback settings are correct. You need to run the wizard only once for each combination of playback and capture device you select. Each time your application starts, you should test the configuration by calling IDirectPlayVoiceTest::CheckAudioSetup with the dwFlags parameter set to DVFLAGS_QUERYONLY. This enables you to quickly test whether the device configuration has changed since you last tested them. If your devices have not been tested, you should run IDirectPlayVoiceTest::CheckAudioSetup again to invoke the wizard. If you do not do so, then IDirectPlayVoiceClient::Connect will return DVERR_RUNSETUP, and you will not be able to initialize DirectPlay Voice.

If the user's sound card does not have full duplex capability, it can only listen to voice communications. It cannot send voice communications because the game typically holds the audio card in playback mode. To prevent problems, DirectX 8.0 does not enable switching dynamically between playback and capturing. The DirectX audio setup wizard provides feedback to the user on the duplexing capabilities of the system.

Note that there are still many computer systems in active use that do not include a full duplex sound card. Full duplex sound cards came into popular use in 1998, although at the time few of the audio card drivers had full duplex operation enabled. Customers who purchased new systems in 1999 or upgraded drivers in 1999 are more likely to have full duplex capability.