Sending zeros to the headphones' buffer is not advisable! It turns into autofill or makes the buffer pointer zero. Null pointer is violation. You were not send zero to ppData
so here is autofill the buffer.
so I expect to hear nothing from the headphones.
You can try use IAudioClient::Stop method to stop recording the audio stream.
Or delete the audio device in driver
Because Microsoft does not provide the method to remove audio endpoints dynamically.