Originally Posted by vairulez
peter could you please share what you have found out about the audio stack of vista, while writing your bit perfect player ? (did you manage to do it by the way ? care to share ?)
Let me say this about it :
First of all, NOTHING in this thread as exposed by Amir and a few others was untrue. However, you have seen my counterquestions throughout the thread, and ALL of them a. were not answered and b. implied something in which I turned out to be right. One of the best examples is my suggestion about other apps dying at playing a sound, while "your" app is running the soundcard in exclusive mode. If you'd read back again, you will see my (the) implications *IF* such a situation would happen, and obviously MS does not like to provocate that (and that's why the responses stayed away).
The complete information is not in this thread, although a few things can be reasoned out by those who know the ins and outs a bit.
Also, from the documentation (in the SDKs, MSDN) -to me- clearly follows that MS at this time don't want us to use the nice stuff ...
There are no working examples, and there is NO - and I mean *not any* references to bit perfect playback, or the use of Exclusive Mode for that matter.
The reason for this IMO (!) is as follows :
Where all the "nice stuff" has been made available to developers, this is all in the area of "unmanaged code". In order to better understand what this means : this is about not Dot-Net. Or IOW, plain C++.
Officially MS calls this : stuff from Kernel Mode has been made available in User Mode. Right. But they did not take the time to implement all in Dot-Net, hence rewrite the code. Also, most probably this isn't even possible, because things would be of a too high level, hence too slow again (latency).
I say, that any self respecting larger piece of software, just cannot integrate into the unmanaged-code-world. It just takes too much to acomplish. Rewrite the lot in plain C++ ? undoable ! Besides that, in the current world of software development, using the very powerful Dot-Net features, programmers would need to find out programming again. In fact, I am one of them ...
Vairulez, I have other news for you, and probably to all besides MS insiders themselves;
You recall my search for WaveRT on another forum the other day ? You also recall the document you referred to about this ?
1. This document (by heart, from September 2006) praised WaveRT as the new way to go for, when you are into low latency stuff.
2. This same document exists in a January 2006 version just the same, stating WaveRT obsolete now ...
3. WaveRT exists since 2000, the the code referring to LongHorn (i.e. Vista) already ...
Thank you very much.
There are NO WaveRT examples, except in the middle of AC97 drivers (hence unuseable for what we want).
I will not say all is a hoax, although it was me myself getting Exclusive Mode to run, because officially (per program comment) it can't ... That is, not that MS herself knows of in example code, which might have been a tad too old for the RTM release of Vista. Otoh, questions about this on MSDN forums are not answered (but I didn't look for 2 or 3 weeks now).
For the Pro-audio world : latency is far far less than one audio sample (2.4 GHz machine, less than 0.1ms at 88.2KHz). Of course that's unuseable (because of refilling buffers), but true anyway if you do it the way it *can* be done -> FWIW I do this.
PeterDisclaimer : Above are all my own findings and thoughts, and I didn't copy anyone else's (there's nothing to copy as of yet ).