Thank you Tim, But why seem all product in this market using MSVAD ? I think if they all chose MSVAD,that must be some reason. I don't think they are all wrong,What do you think? You could check AV voice changer, MorphVOX Junio,vocalster, after intall, all of these product will add a virtual audio device in Device manager, and the same sequence will be displayed in Driver details (include VAC).the .sys file in middle of stream.sys and kxproxy.ax why? ----- Original Message ----- From: Tim Roberts To: wdmaudiodev@xxxxxxxxxxxxx Sent: Saturday, June 27, 2009 12:55 AM Subject: [wdmaudiodev] Re: How to filter microphone voice? kevinrich47 wrote: Thank you Sam, I just want to know how to use MSVAD to read microphone input from physical device (default),then modify it and then any application get audio from microphone will get the changed voice. I don't think you are thinking about this in quite the right way. MSVAD appears to the system as an audio device. It looks like another sound card, or another microphone. As a sound source, it is expected to generate its own data. There is no easy way for one audio source driver to pull data from another audio source driver. What you would end out doing is having your application connect to the real microphone, read the data, do your processing, and feed the modified data back down to your MSVAD driver, so that it could then feed the modified data to other applications. That's a lot of error-prone work. Any time a kernel driver has to rely on a user-mode application to do its job, you introduce many complications. In my opinion, Sam has the right idea. Write a lower filter to ks.sys, or an upper class filter for media class. Put your algorithm there. -- Tim Roberts, timr@xxxxxxxxx Providenza & Boekelheide, Inc.