Why doesn’t Vista expose individual pairs of channels as separate endpoints?

One of the questions that was asked after EHO and my Channel 9 video aired was: is there an ability in vista to set on which speaker you hear an application? for example i want the media player on the 2 front speakers and the game on the 2 back speakers? if it’s possible, is…

18

Volume control in Vista

Before Vista, all of the controls available to applications were system-wide – when you changed the volume using the wave volume APIs, you changed the hardware volume, thus effecting all the applications in the system.  The problem with this is that for the vast majority of applications, this was exactly the wrong behavior.  This behavior…

25

Another Channel9 Video

Last month, Elliot Omiya and I sat down with Charles Torre of Channel 9 and did a brain dump of the audio stack and APIs in Windows Vista. The Channel9 guys just went live with the video, you can see it here.   Enjoy.  

2

Heard over the weekend…

We were chatting with friends about the interview with Tahrmina Martely on APM’s Weekend America about her first experiences in the US (listen to it here (sorry, Real Media only :()) Tahrmina tells the story about when she first came to the US as a high school exchange student.  Before she left Bangladesh, her mother…

7

Da Goat Horns

Raymond’s post the other day about a giant inflatable bunny that showed up in his office finally prompted me to get off my duff and borrow a scanner from the PM in my group so I could scan in this picture: The scan’s pretty horrible, but you get the idea (I was so skinny back…

9

Where does WASAPI fit in the big multimedia API picture?

I’ve previously mentioned that we’re adding a new low level multimedia audio rendering api for Vista called WASAPI (Windows Audio Session API).  As I’d mentioned, all the existing audio rendering APIs in Windows have been replumbed to use this new API. I just got an email from someone asking for more details about WASAPI. One…

15

What’s wrong with this code, part 16, the answers

I intentionally made the last “What’s wrong with this code” simple, because it was just intended to exhibit a broken design pattern. The bug appears here:         cWaveDevices = waveOutGetNumDevs();  The problem is that waveOutGetNumDevs is in winmm.dll, and MSDN clearly states: The entry-point function should perform only simple initialization or termination tasks. It must…

13

What’s wrong with this code, part 16

This real-world problem shows up as an appcompat problem about every two or three weeks, so I figured I’d write it up as a “What’s wrong with this code” snippet.   BOOL DllMain(HMODULE hModule, ULONG Reason, PCONTEXT pContext){    ghInst = (HINSTANCE) hModule;    if (Reason == DLL_PROCESS_ATTACH) {        DWORD cWaveDevices = 0;        DisableThreadLibraryCalls();        cWaveDevices = waveOutGetNumDevs();       …

15

What’s the big deal with Vista Betas?

In this somewhat silly Channel9 post about unsubstantiated rumors of Microsoft canceling Vista Beta 2, “Sabot” wrote the following question: What’s all the fuss about a Beta? I don’t actually get it? It comes when it’s ready and I’m happy with that.I’m one of those guys that’s not really all that fussed about knowing the…

16