FYI In the case that AUDCLNT_STREAMFLAGS_EVENTCALLBACK is used during IAudioClient::Initialize, if the underlining audio WaveRt miniport driver supports IMiniportWaveRTStreamNotification interface, when running in the exclusive mode (AUDCLNT_SHAREMODE_EXCLUSIVE), the event used in IAudioEndpoint::SetEventHandle will be triggered directly by the driver's DMA completion operation. -----Original Message----- From: wdmaudiodev-bounce@xxxxxxxxxxxxx [mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] On Behalf Of Jose Catena Sent: Thursday, June 04, 2009 1:54 PM To: wdmaudiodev@xxxxxxxxxxxxx Subject: [wdmaudiodev] Re: WaveRT model conceptual flaw Thanks Frank! Thanks God! I missed it in the docs, everywhere the timed polling is used and recommended. I'm very excited with WaveRT for mapping the buffer and playback position to user memory, among other advantages. What a clever design! Still I think MS should review what I wrote about using a timer instead of a callback based on audio driver interrupt. I think something important were overlooked when someone decided to use a timer, like doubled latency for a given interrupt rate to begin with. The intended avoidance of extra kernel/user transitions is not true, both methods are originated by an interrupt and ended in signaling user code. So I think the recommendation to use timers should be changed. Thanksfully there's the right thing I missed, so now everything looks perfect. Well, well, well, and here is it the right way from http://msdn.microsoft.com/en-us/library/dd370844(VS.85).aspx In addition, the IAudioClient::Initialize method supports an AUDCLNT_STREAMFLAGS_EVENTCALLBACK flag that enables an application's buffer-servicing thread to schedule its execution to occur when a new buffer becomes available from the audio device. By using these features, an application thread can reduce uncertainty about when it will execute, thereby decreasing the risk of glitches in a low-latency audio stream. Thanks God there's finally the right people designing these very needed and key architectural improvements. Jose Catena DIGIWAVES S.L. ****************** WDMAUDIODEV addresses: Post message: mailto:wdmaudiodev@xxxxxxxxxxxxx Subscribe: mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=subscribe Unsubscribe: mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=unsubscribe Moderator: mailto:wdmaudiodev-moderators@xxxxxxxxxxxxx URL to WDMAUDIODEV page: http://www.wdmaudiodev.com/ ****************** WDMAUDIODEV addresses: Post message: mailto:wdmaudiodev@xxxxxxxxxxxxx Subscribe: mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=subscribe Unsubscribe: mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=unsubscribe Moderator: mailto:wdmaudiodev-moderators@xxxxxxxxxxxxx URL to WDMAUDIODEV page: http://www.wdmaudiodev.com/