Search Unity

Echo cancellation problem on iOS

Discussion in 'iOS and tvOS' started by timrayle, Apr 4, 2018.

  1. timrayle

    timrayle

    Joined:
    Apr 4, 2018
    Posts:
    1
    We have an app that supports voice chatting between users. If anyone is running the app on an iOS device we hear an echo of the chat. The only workarounds are for iOS users mute the mic or wear a headset. We'd like a better solution.
     
  2. Valer2001

    Valer2001

    Joined:
    Apr 5, 2018
    Posts:
    1
    If you are not the developer of the app, you should contact them and ask them to either enable the built-in echo cancellation of iOS or if this does not work they should integrate a third party echo cancellation software like SoliCall.
     
    tmrayle likes this.
  3. yopunky

    yopunky

    Joined:
    Sep 1, 2014
    Posts:
    9
    You might want to check the Asset Store. Although I've not tried it (no current need - although I have done some work with capturing and processing sound with unity - and it wasn't all that easy) the Dissonance Voice Chat with 5 stars and $75 looks like it has the goods. Speaking as an old telecoms guy implementing good echo cancellation is a non-trivial problem that has been solved. Getting good performance on different devices will still be your challenge. Let us know how it works out.
     
    tmrayle likes this.
  4. tmrayle

    tmrayle

    Joined:
    Apr 4, 2018
    Posts:
    1
    From what I can see, the built in iOS echo cancellation requires using the Audio Unit framework and setting the kAudioUnitSubType_VoiceProcessingIO subtype. Does Unity use this framework for it's iOS audio and can I change the subtype it's using?

    I'll take a look at SoliCall and Dissonance Voice Chat.
     
  5. abgamers

    abgamers

    Joined:
    Dec 22, 2009
    Posts:
    97
    Did anyone find a good solution for echo cancellation for mobile??
     
  6. Lanre

    Lanre

    Joined:
    Dec 26, 2013
    Posts:
    3,971
    Check out the NatMic project. We are actively working on this. We have implemented echo cancellation on Android, and are about to do so on iOS.