Tim, in regards to the following: >> Yes, they drift, but you can detect that. You will be getting blocks at >> regular (short) >> intervals, so you can detect changes in timing over time. It's not easy, >> but I told you >> that already. How severe can this drift become? And if the GFX/LFX are running asynchronously the GFX(render) may fall behind the LFX(capture), in which case AEC would begin to fail. I guess the GFX could buffer 10ms frames for the LFX to use, however if the LFX process overtakes the GFX proccess(if this is even possible) then the GFX will always be behind the LFX stream. --- On Thu, 9/4/08, Tim Roberts <timr@xxxxxxxxx> wrote: From: Tim Roberts <timr@xxxxxxxxx> Subject: [wdmaudiodev] Re: GFX/LFX fullduplex support. To: wdmaudiodev@xxxxxxxxxxxxx Date: Thursday, September 4, 2008, 2:03 PM pete c wrote: In regards to the following statement below: >> Of course, you are going to NEED such synchronization if you hope to do >> echo cancellation. That's another thing that makes this tricky. You >> will need some pretty brainy algorithm scientists to make this work. I know that i need GFX/LFX synchronization for AEC to work, however im not convinced that it may even be possible, since the GFX is independent (speaker driver) process from the LFX (microphone driver) process. Is it possible to synchronize these two independent processes with each other within Vista and if so what type of mechanism would be recommended? The "recommended" approach is not to do this at all, and instead rely on the DMO approach. ;) You know the output sample rate. You know the input sample rate. Yes, they drift, but you can detect that. You will be getting blocks at regular (short) intervals, so you can detect changes in timing over time. It's not easy, but I told you that already. -- Tim Roberts, timr@xxxxxxxxx Providenza & Boekelheide, Inc.