Hi,
Both linphone and my app using liblinphone suffer from echo and
stuttering when using the built-in mic and speakers in the Sony Z2
tablet. I'm using two identical tablets running the same version of
linphone/liblinphone, and Android 4.4.4. My own app uses liblinphone
2.3.2. I've tried enabling echo limiting and echo canceling, none of
them, or just one of them. None of the four combinations solve the
problem. The stutter seems to happen when the other party hears his
own voice for a fraction of a second, so I'm guessing that's the echo
limiter trying to eliminate feedback. Are there any good tips or
step-by-step guides to eliminating such problems for tablets?
Here are some relevant lines from liblinphone startup.
Native android sound support available.
This device (Sony/SGP511/msm8974) declares it has a built-in echo
canceller.
No AEC information available for model [Sony/SGP511], trying with
platform name [msm8974].
Found AEC information for [Sony/SGP511/msm8974] from internal table
Sound device information for [Sony/SGP511/msm8974] is: builtin=[yes],
delay=[0] ms
Could not set voip=on: err=-38.
Hardware output sampling rate is 48000
Hardware is known to have bugs at default sampling rate, using 16000
Hz instead.
Minimal AudioRecord buf frame size at 16000 Hz is 2048
Could not set voip=off: err=-38.
Card 'libmedia: android sound card' added
SDK version [19] detected
This device (Sony/SGP511/msm8974) declares it has a built-in echo
canceller.
No AEC information available for model [Sony/SGP511], trying with
platform name [msm8974].
Found AEC information for [Sony/SGP511/msm8974] from internal table
Sound device information for [Sony/SGP511/msm8974] is: builtin=[yes],
delay=[0] ms
Card 'ANDROID SND (deprecated): Android Sound card' added
To me, it looks like the tablet has a built-in echo canceller, yet
Hacks.hasBuiltInEchoCanceller() returns false.
LinphoneCore.needsEchoCalibration() also returns false though, so I'm
not quite sure what to make of this.
Also, LinphoneCall.isEchoCancellationEnabled() seems to ignore
whatever I pass to LinphoneCall.enableEchoCancellation() during a
call. It looks like I need to use the method in LinphoneCore to change
the value.
I'm grateful for any tips or guides to solve my problem. Let me know
if I should provide more information.
regards,
Balder Mørk
_______________________________________________
Linphone-developers mailing list
address@hidden
https://lists.nongnu.org/mailman/listinfo/linphone-developers