[wdmaudiodev] My first WASAPI implementation.

  • From: David Viens <davidv@xxxxxxxxxx>
  • To: wdmaudiodev@xxxxxxxxxxxxx
  • Date: Wed, 22 Mar 2006 11:01:51 -0500

Hello

I am implementing WASAPI for the portaudio project. Even though its the first release of the API in Feb CTP, I can say that i got relatively surprising results
with IAudioRenderClient so far. (1323 samples of latency @44100 is however the best i can
make it run at with the bundled drivers)


To fine tune my results, im looking at the documentation of the new avrt functions and the mcss, in order to synchronize with the WASAPI IAudioClient's "periods"

I see AvRtWaitOnThreadOrderingGroup like a nice timer, but the documentation is currently
puzzling me. Both the avrt and the AvSetXX methods are in the same dll (avrt.dll), so i guess they are made to go hand in hand.


While we can specify the "periods" as 100-nano increments, the docs
(http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dllproc/base/thread_ordering_service.asp)
says the minimum value the scheduler will be able to provide is 500 micros.. but is that also the granularity? Is this granularity any different than what as on XP? Is it dependent on the architecture? Or is the granularity is set to the "worst case scenario" of the Vista-compatible hardware?)


Any chance on a few lights on this new Multimedia scheduler business and how it reflects the normal thread priority rings? Because once i set AvSetMmThreadCharacteristics to
"Pro Audio" , then GetThreadPriority returns -7 but GetPriorityClass still returns NORMAL_PRIORITY_CLASS (i'd expect something higher)


Secondly it seems a little odd to let something as critical as SystemResponsiveness as a registry key that any user can hack..

Cheers,

PS: any creativelabs people on the list might spare an alpha build of a more recent Audigy 2 ZS driver? :)

--
David Viens, Plogue Art et Technologie Inc,
Montreal. http://www.plogue.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/

Other related posts: