hi all, I am trying to understand the video capture DMO that comes along with the Vista Windows SDK.(AecSDKDemo) [Microsoft High Quality Voice Capture DMO] There is a filter mode and source mode available for this DMO. Seems we need to use the DMO in filter mode to have an output that is free from echo. That means 2 inputs have to be given to the filter. 1 -> The audio captured (microphone data + audio played from the speaker,assuming it is open speaker environment, e.g. laptop) 2 -> The audio data received from the network (that will be played on the speaker) Output expected is - Echo free audio (i.e. only Microphone data and not the audio played from the speaker) As per the usage of DMO, it has to wrapped in a DMO wrapper filter. http://msdn.microsoft.com/en-us/library/aa919879.aspx And DMO wrapper limitations states that more than one input is not supported ? http://msdn.microsoft.com/en-us/library/ms783389(VS.85).aspx So then how can I use this Voice Capture DMO in filter mode which needs 2 input to output ECHO free audio data?? Please correct me if my understanding is wrong. Regards, Elza
From: "bobyjemy@gmail.com" > I am trying to understand the video capture DMO that > comes along with the Vista Windows SDK.(AecSDKDemo) > [Microsoft High Quality Voice Capture DMO] If you want to implement video capture, why are you looking at a sample on audio echo cancellation? > As per the usage of DMO, it has to wrapped in a DMO > wrapper filter. > http://msdn.microsoft.com/en-us/library/aa919879.aspx > > And DMO wrapper limitations states that more than one > input is not supported ? > http://msdn.microsoft.com/en-us/library/ms783389(VS.85).aspx > > So then how can I use this Voice Capture DMO in filter > mode which needs 2 input to output ECHO free audio data?? A DMO can be used on its own, outside of a DirectShow graph. A DMO wrapper filter is only required to use it in a graph and it does not need to be the stock DMOWrapper, but it can be a custom one. What do you *really* want to do? -- // Alessandro Angeli // MVP :: DirectShow / MediaFoundation // mvpnews at riseoftheants dot com // http://www.riseoftheants.com/mmx/faq.htm
bobyjemy@gmail.com wrote: > >So then how can I use this Voice Capture DMO in filter mode which >needs 2 input to output ECHO free audio data?? You can't. The AEC DMO cannot be used in a DirectShow graph. It can only be used by itself, or with DirectSound. -- Tim Roberts, timr@probo.com Providenza & Boekelheide, Inc.
oh ! I am so sorry, my first line says Video Capture DMO...I actually meant to say ' VOICE capture DMO ' I wish to capture echo free audio for my VOIP application. Currently I have a directSound architecture VOIP application. After I read about the 'Voice Capture DMO' and its ability of AEC, I thought I shall move from DirectSound audio capture to DirectShow Audio capture for my VOIP. So as per what Tim has mentioned AEC DMO cannot be used in directshow, isn't it ? How else do I get the benefit of AEC DMO? Can you please suggest how complex it will be with directsound? Also is it the Source or Filter mode that I need to start with. Thanks, Elza
From: "bobyjemy@gmail.com" > So as per what Tim has mentioned AEC DMO cannot be used > in directshow, isn't it ? How else do I get the benefit > of AEC DMO? It's a DMO so, as I wrote before, use it directly on its own, outside of DirectShow or DirectSound, or write a custom DirectShow wrapper for it. > Can you please suggest how complex it will be with > directsound? No idea. > Also is it the Source or Filter mode that I > need to start with. It depends on what you want to do and how, we don't read minds. Have you read the readme.rtf file included in the sample where the differences between the 2 modes are described? -- // Alessandro Angeli // MVP :: DirectShow / MediaFoundation // mvpnews at riseoftheants dot com // http://www.riseoftheants.com/mmx/faq.htm
bobyjemy@gmail.com wrote: > >I wish to capture echo free audio for my VOIP application. Currently I >have a directSound architecture VOIP application. After I read about >the 'Voice Capture DMO' >and its ability of AEC, I thought I shall move from DirectSound audio >capture to DirectShow Audio capture for my VOIP. > >So as per what Tim has mentioned AEC DMO cannot be used in directshow, >isn't it ? How else do I get the benefit of AEC DMO? DMOs can be used with DirectSound. I've never done it, but the documentation mention that use case specifically. -- Tim Roberts, timr@probo.com Providenza & Boekelheide, Inc.
From: "Tim Roberts" > DMOs can be used with DirectSound. I've never done it, > but the documentation mention that use case specifically. I believe DirectSound only supports DSP-like DMOs, that is 1 input + 1 output. -- // Alessandro Angeli // MVP :: DirectShow / MediaFoundation // mvpnews at riseoftheants dot com // http://www.riseoftheants.com/mmx/faq.htm
On Tue, 29 Jul 2008 10:28:59 -0400, Alessandro Angeli wrote: > From: "Tim Roberts" > >> DMOs can be used with DirectSound. I've never done it, >> but the documentation mention that use case specifically. > > I believe DirectSound only supports DSP-like DMOs, that is 1 > input + 1 output. That is correct. The exception is the Echo Cancel Capture DMO, but they have specific code to handle that special case. -- http://www.chrisnet.net/code.htm [MS MVP for DirectShow / MediaFoundation]
"Chris P." wrote: >On Tue, 29 Jul 2008 10:28:59 -0400, Alessandro Angeli wrote: > >> From: "Tim Roberts" >> >>> DMOs can be used with DirectSound. I've never done it, >>> but the documentation mention that use case specifically. >> >> I believe DirectSound only supports DSP-like DMOs, that is 1 >> input + 1 output. > >That is correct. The exception is the Echo Cancel Capture DMO, but they >have specific code to handle that special case. ...but that is EXACTLY the DMO that he wants to use... -- Tim Roberts, timr@probo.com Providenza & Boekelheide, Inc.
On Wed, 30 Jul 2008 22:56:12 -0700, Tim Roberts wrote: >>That is correct. The exception is the Echo Cancel Capture DMO, but they >>have specific code to handle that special case. > > ...but that is EXACTLY the DMO that he wants to use... As far as I know there is no way to substitute your own echo cancel DMO, you can use the Windows one via DirectSound. In theory it should be able to work outside of DirectSound as well but I haven't seen anyone make it work because you would have to write your own DMO wrapper to use it with DirectShow or use the DMO directly outside of DirectShow. -- http://www.chrisnet.net/code.htm [MS MVP for DirectShow / MediaFoundation]