I have a few questions concerning the WaveOut... function available for VC++ that are cannot be found in the libraries.
1. Is there any delay from the time I invoke waveOutWrite, and send the audio to the device, to the time the sound device plays the sound out of the speakers.
2. Is there a minimum buffer size for the audio buffer that is sent to the device, in order to play it proper, or is that a specification with
in the sound device.
I am asking these questions because currently, I am creating a basic voice conference software for a project and I need to find out these technical
details to eliminate some latency problems. I would like to know what happens to the audio buffer in memory once it is sent to the device for playback.
- Is the entire buffer locked in memory while device is playing it? Or is
a set number of bytes of memory in the vicinity of the data the sound is
currently playing that gets locked?
- I am not sure if these properties are set within the win32 API or with
the sound device themselves but if you can shed some light on some of the
questions I have, answers or sources of information that can possible
lead to the answers, I would greatly appreciate it.