Audio Output Modes
Media Center can output audio data in a variety of ways. This is important, because different hardware requires different communication methods to obtain the best possible audio quality and performance.
You can adjust your Audio Output Mode via:
- Tools > Options > Audio > Audio Device
- Player > Playback Options
- Click the DSP () button under the Player Window and click the Playback Options button.
Media Center supports a variety of different Audio Output Modes:
- Direct Sound
- Disk Writer
- Null Output
- Core Audio
- Null Output
Under the drop-down menu, MC19 automatically selects the Output Mode that it determines should be best for each detected audio device. In most cases, you should just need to select your audio device from the menu.
For earlier versions of Media Center, or to understand the available choices, use the following guide.
To get the best audio quality, your software should communicate directly with your sound hardware, without Windows or any other layer doing resampling or other processing of the signal.
Core Audio, ASIO, WASAPI, and Kernel Streaming are all hardware direct.
There are some things to be aware of when using hardware direct communication:
- During audio playback, the soundcard will be locked. You will not be able to play sounds from a web browser or other program while audio is playing.
- Playback of sample rates your soundcard does not support will not be possible. Use Tools > Options > Audio > Settings > DSP and output format > Output Format to allow Media Center to convert to a supported sample rate.
Choosing the Audio Output Mode
On OS X MC uses Core Audio to access your audio device, which provides bit-perfect playback, and requires no configuration. On Windows, Media Center will typically choose the best Output Mode available for your device, based on the drivers installed. If given the choice between multiple modes or drivers, choose the best output for your hardware in this order:
1) If your hardware has a native, well-behaved, ASIO driver, use ASIO.
2) Otherwise, on Windows Vista, Windows 7, or newer, use WASAPI exclusive.
3) Otherwise, use Kernel Streaming if it works.
4) If none of the above are possible, use DirectSound or WaveOut. Neither of these provide hardware direct output, so choose based on performance.
If you have problems, start with DirectSound and get MC working. Once you have audio working and are comfortable using MC, then experiment with other audio output choices.
ASIO is a sound card communication system created by Steinberg.
If your soundcard has a native ASIO driver, this is the most direct (and normally best) way to communicate with it.
Please note that ASIO4All is basically Kernel Streaming with an ASIO wrapper. There's no good reason to use ASIO + ASIO4All vs just using Kernel Streaming directly in Media Center.
For more information, see ASIO.
WASAPI (Windows Audio Session API)
WASAPI is a hardware communication system in Vista, Windows 7, and newer. When used in 'exclusive' mode (available in Output mode settings... below WASAPI selection), the Windows system mixer is bypassed.
For more information, see WASAPI.
Kernel Streaming is a hardware direct way to speak directly to a WDM audio driver. It works on XP, so is useful when the above two options are not possible.
This is Windows default and the most compatible output method. It plays through the system mixer. This means all formats will be converted by Windows to the native format of the card. It is highly compatible, but it is not the highest quality method.
This is a legacy output mode. With some misbehaved hardware, it may work better than DirectSound.
This writes whatever would have gone to the soundcard to a WAV file on disk.
There are several choices. "Internal" will usually work. Set it by clicking on the speaker icon to the left of the volume slider in the upper left corner.
The only way to prevent a Creative Labs X-Fi based card or Asus Xonar card from resampling all incoming audio is to use ASIO and the driver that came with the card. With these cards, WASAPI exclusive will not change the master clock of the card.