I was excited to find an AEC/microphone array sample in the Vista SDK, until I realized that it was just a demo application showing how to use the existing Voice Capture DMO, rather than a sample showing how to WRITE such a DMO. I have a client with a proprietary hardware-assisted AEC mechanism in 2K and XP, and they want to know how to implement that in Vista. Thus, I have a couple of questions about MFWMADMO.DLL, if I may. (Hmm, how do you pronounce MFWMADMO? ;) This DMO snaggles both incoming and outgoing audio streams, as it must to do echo cancellation. How does it do that? I mean, I think I now understand the proper way to connect to a microphone source, but I don't think I know how to eavesdrop on the output end in the same APO. Further, the documents say "If AEC is enabled, the DMO can capture speaker streams only after the audio mixer. This means that all system sounds are canceled (per-system cancellation) as well as the far-end voice." Again, how does it do that? I was under the impression that the only way to accomplish such a thing was by writing GFX sAPO, and even that is wired to a single output device. Does the DMO make itself the GFX sAPO? This DMO will only work in an application that specifically instantiates it. Is there a way to create things so that, for example, I can get AEC while using the standard Sound Recorder application? Is there any chance of getting source code for this DMO, or for providing hooks to allow 3rd party replacement of some of the processing stages? -- Tim Roberts, timr@xxxxxxxxx Providenza & Boekelheide, Inc.