IDmaChannel CopyFrom/To synchronization

Hi, all.

(This Q is from a perspective of someone not much acquainted with
audio drivers, and is more of a “I wish to know”, so do be gentle :))

I saw a sample, based I believe on Microsoft’s MSVAD WDK sample
from earlier releases, that accesses its buffers from CopyFrom/To
callbacks, without any synchronization.
And funny enough, I have never been able to find a bit of corruption.

Does it happen that these two would NEVER be called at the same
time, so the driver need not handle synchronization?

The point is that those two are never used in the same device. CopyFrom is called in a capture device, like a fake microphone. CopyTo is called in a rendering device, like a fake speaker. They won’t ever share the same buffer.

If you were to try to turn this into a loopback device, where the speaker output feeds back to the microphone, then obviously you would have to add synchronization.