Enabling echo canceller on macosx
Enabling echo canceller on macosx
- Subject: Enabling echo canceller on macosx
- From: Éloi Bail <email@hidden>
- Date: Tue, 14 Apr 2015 11:39:25 -0400 (EDT)
- Thread-topic: Enabling echo canceller on macosx
Hi,
I am working on an open source VOIP project.
On MacOSX (tested with version 10.10 - Yosemite), we had an echo. So we wanted to add system echo canceller. kAudioUnitSubType_VoiceProcessingIO seems to be the appropriate solution.
Our audio architecture (without echo canceller) is quite simple :
- 1 ringbuffer : a circular buffer where audio samples are stored and loaded
- 1 audio unit to capture micro (inputUnit_)
* inputUnit_ is a subtype kAudioUnitSubType_HALOutput
* inputUnit_ has a inputCallback that write audio samples from microphone to our ring buffer
- 1 audio unit to output audio (outputUnit_)
* outputUnit_ is a subtype kAudioUnitSubType_DefaultOutput
* outputUnit_ has a RenderCallback that read audio samples from ring buffer and output them on speakers
This system works fine, but as I said, we have an echo.
The full GPL code is available there :
http://pastebin.com/pth0f8wt
I tried then to switch outputUnit_ from kAudioUnitSubType_DefaultOutput to kAudioUnitSubType_VoiceProcessingIO. I also ensure to disable output muting.
The full GPL code is available there :
http://pastebin.com/kAwL8fax
With kAudioUnitSubType_VoiceProcessingIO, I still have an echo. Could you tell me what I am doing wrong ? Could we use kAudioUnitSubType_VoiceProcessingIO with my architecture ? Shall we use more complicated pattern such as AUgraph ?
Thanks,
Eloi
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Coreaudio-api mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden