OK, I've put this in although there are a few small changes I've made. This doesn't belong in IWavePlayer as it is only relevant to WASAPI.
Also, I'd ideally like to avoid the Marshal.StructureToPtr. Is there any chance you could try testibg this with a different signature in IAudioClient2?
Also, I'd ideally like to avoid the Marshal.StructureToPtr. Is there any chance you could try testibg this with a different signature in IAudioClient2?
void SetClientProperties([In, MarshalAs(UnmanagedType.LPStruct)] AudioClientProperties pProperties);