I'm playing around with XAudio2 to send PCM format waves to my soundcard, and I encountered a problem which made me think about this question. I created a .csv file with MATLAB of a sine wave at 440 Hz, and at first I had sampled it at 1 KHz (for 1 second).
My C++ program would then load that file and send the buffer to the soundcard. The problem is that the output was distorted (clipped), and didn't sound like a sine wave at all. Then I thought, maybe the sound card doesn't like 1 kHz sampling rates, so I doubled it, and suddenly everything was fine.
Is there a way to confirm that this really was the problem?