DirectSound passes all audio through the Windows mixer, so it resamples everything to a fixed sample rate. (as set in the sound control panel)
WASAPI Exclusive attempts to set the hardware rate to the input rate. If the hardware cannot play it, you will have an error. The player must handle any resampling of any formats which are unsupported - you can configure this in DSP Studio.
WASAPI Shared will only play audio which matches the sample rate set in the sound control panel, so the player must resample everything to it. If it doesn't match, you will receive an error.
ASIO or Kernel Streaming should behave the same as WASAPI Exclusive if you hardware supports them.
Additional note: I prefer to bitstream my audio output via HDMI, and allow my AVR to decode the HD audio ...
This is not recommended for HTPC playback because the audio and video clocks come from separate sources. This means that your audio and video will never be perfectly in sync.
If you are bitstreaming, you have one of the following:
- Audio and video are untouched and allowed to drift in and out of sync.
- Audio frames are dropped or repeated to keep audio in sync with the video. This produces audible errors.
- Video frames are dropped or repeated to keep audio in sync with the video. This produces visible stuttering during playback.
If you decode in the player, you have a fourth option; you can resample the audio in real-time to maintain sync with the video. In Media Center, this is the "VideoClock" option.
This means that you have smooth playback without dropped frames, and audio stays in sync from start to finish.
This should produce much better results than any of the options you have available when bitstreaming.