New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Voice/Video chat beta: Missing Echo Cancellation #6241
Comments
Do you observe this on both ends? Just to be sure: are the devices isolated from each other / in different rooms? |
Some devices have broken hardware AEC. If you hear echo, the problem is on the other end (that device isn't canceling out the speaker audio from the microphone input), so we'd need information about the device on the other side. |
It was observed on one end, devices are isolated from each other with a nice wide swath of ocean and some land. The device that would be missing AEC would be the Fairphone2, which is also, sadly, the one that I don't have here to get specifications & logs from. |
I have a Fairphone 2. I will try to reproduce this issue in the next few days. |
Just tested it. I heard a very clear echo speaking into device XU -> FP's echo cancellation failed. I heard the echo cancellation working speaking into device FP -> XU's echo cancellation works fine. There is always some soft noise coming from FP's earphone but directly after I spoke a word into FP this noise was somehow disturbed. I interpreted this as working echo cancellation. tl;dr I can reproduce this issue and it's device FP's fault. Device info FPDevice: Fairphone 2 Device info XUDevice: Sony Xperia U |
Thank you for verifying this. Can you follow up with upstream fairphone?
…On Fri, 17 Feb 2017, 18:02 FeuRenard, ***@***.***> wrote:
Just tested it. I heard a very clear echo speaking into device XU -> FP's
echo cancellation failed. I heard the echo cancellation working speaking
into device FP -> XU's echo cancellation works fine. There is always some
soft noise coming from FP's earphone but directly after I spoke a word into
FP this noise was somehow disturbed. I interpreted this as working echo
cancellation.
tl;dr I can reproduce this issue and it's device FP's fault.
Device info FP
*Device:* Fairphone 2
*Android version:* 5.1.1
*Signal version:* 3.29.6
Device info XU
*Device:* Sony Xperia U
*Android version:* 4.4.4
*Signal version:* 3.29.6
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#6241 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ABmI5i6ZzRlqpZSWtWNcB7Rd00LKa-LWks5rddK7gaJpZM4MDosn>
.
|
I tested the dialer app with my landline phone and I hear no echo speaking to my landline phone. But maybe the landline phone can also do echo cancellation for the other side...
I just revived this thread: https://forum.fairphone.com/t/echo-with-google-hangout/15745 |
@FeuRenard I can try blacklisting the fairphone from hardware AEC in the webrtc code, can you give me the fairphone2's "ro.product.model" string? |
In settings -> about phone -> model number it says "FP2". Is this what you want? If not: From where can I get this string? |
Yeah I think that's it |
@FeuRenard can you try this test apk on your FP2 and see if that helps? |
I tried. Good news: echo cancellation seems to work with this apk. Bad news: Fairphone 2 reboots after a couple of seconds. |
Hah, what!? Just... reboots? |
Yes. 4 out of 5 times I tried it rebooted. I sent you logcat of the final seconds before reboot via e-mail if you are interested. |
@FeuRenard can you explain how to install this apk (in the community forum for example)? Can i run it alongside my normal signal installation? Then I could try and test it on my Fairphone 2 tomorrow... |
Sounds like the fairphone has some issues. Either they need to fix the AEC or they need to fix the crash, I don't think there's anything else I can do. |
My redmi note 3 pro is displaying the same issues: my conversation partner is complaining about echo, but on my end everything is fine. If you push your commits from your testapk somewhere i can give it a shot.
Despite it saying redmi note 3 it is a redmi note 3 pro, which has slightly different hardware. |
Just for the record: |
@FeuRenard interesting. Sounds just like something I experienced when calling a Xiaomi Mi4 (ro.product.model = "MI 4LTE"):
We tried every combination of the three blacklists in WebRtcAudioUtils.java. The minimal change required to make it work properly was to add "MI 4LTE" to both the If you're interested in investigating this further, I could provide you with test builds of the AppRTC demo app with and without your model blacklisted. |
I've noticed similar echo issues with a Samsung S5? Is there any similarity between the hardware on these devices? |
@skulumani what exactly are you seeing? You're hearing an echo when you do a WebRTC call to someone who has a Samsung Galaxy S5 and they enable speaker mode? |
ftr: i too was not using the speaker mode, but the other party complained about echo. |
I (Moto X 2013) call a friend (S5) and I experienced an echo of my own
voice.
We're both using the new beta calling feature and from this thread it seems
to be a function of the S5 rather than my moto x.
Another thing is that the echo is almost the same volume as the incoming
audio. I suppose it's a function of the volume of the speaker of the S5.
We're both using the standard ear piece rather than the speakerphone. Only
I hear the echo while the friend does not. I can do more testing and
submit logs if it'll be useful.
Is there any more information that might be useful. For example, I can do
some research into the hardware of the Samsung and Fairphone. I can get
debug logs or try and use the test apk from above.
…On Wed, Mar 1, 2017, 16:54 haffenloher ***@***.***> wrote:
@skulumani <https://github.com/skulumani> what exactly are you seeing?
You're hearing an echo when you do a WebRTC call to someone who has a
Samsung Galaxy S5 and they enable speaker mode?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#6241 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AFBaZswwERaib6f7si88sQ5OSc0UqkgDks5rhej9gaJpZM4MDosn>
.
|
By the way @moxie0, I have an s5 I could test on if needed. |
We're hearing echoes since video calls were added, too. (When video calls were in opt-in beta, we enabled it for testing, heard the echoes and disabled it again.) Before, we didn't hear any echoes at all. Both devices are Wileyfox Swift (and the echoes can be heard on both ends). |
I am still getting echoes (Pixel Phone to Pixel Phone). One thing that I noticed is that I have speaker on when the video call starts. If I turn speaker off it mitigates the echoing (but doesn't make it go away). With speaker off it is still loud enough for me to hear the other person (in a quiet room). Not sure if it's being tested with/without speaker. |
Seems like we should get more aggressive about adding devices to the hardware AEC blacklist. @haffenloher I'm surprised that OpenSL was a contributing factor with echo. |
@lantsem What does that mean? You're hearing echo when you're talking to someone else who has a Moto X (2014) running LineageOS 14.1 and Signal 4.7.4? edit: sorry, just scrolled back through this thread, looks like you're aware of this distinction, so the answer is probably yes :) |
I'm running 4.7.4 with Android 6.0 on a Moto X 2014 (XT1092), too (since the beta has been available). The other side is usually a Galaxy A5 2015 (SM-A500FU) and we do not have any echo or other calling issues, even outside when I'm using my Moto X and it's quite windy. |
@haffenloher Yes, from several phones that I tested with 4.7.4 only Moto X 2014 running LOS 14.1 shows an issue. But the impression was created that the echo became less noticeable for normal talk (not on speaker). @minnmann My second Moto X 2014 with stock 6.0 didn't have echo with hardware AEC even with OpenSL ES. I wrote about it earlier. |
Moto G5 with stock 7.0 and 4.7.4 also has an echo with speaker mode. |
Was having echo issues with the Moto G5. Compiled v4.7.4 with add("Moto G5"); in the blacklist. src/org/thoughtcrime/securesms/ApplicationContext.java private void initializeWebRtc() { Echo is gone. Works well now. Could you add the Moto G5. It has a very broken AEC |
@adlererik with the Moto G5's stock rom or with a custom OS? |
@adlererik What happens when you also add Moto G5 to the opensles whitelist? |
@moxie0 Sorry for the late response. Have tested two Moto G5 phones with opensles whitelisted Signal v4.9.9 and v4.10.10 tested. src/org/thoughtcrime/securesms/ApplicationContext.java
Test conditions: Results: Conclusion: |
My Samsung GT-I9192 Galaxy S4 Mini Duos (serranodsxx) with Signal 4.11.5 on Android 7.1.2 (LineageOS 14.1-20170615-nightly-serranodsdd) is causing echo for other end (Samsung Note 3, I think). This echo gets worse when a headphone is used on my end. This means that the echo does not originate from my microphone picking up the other end's audio, but must happen inside the system/software stack. (Perhaps echo cancellation is effectively adding the echo?)
The other end is my mother, who I'm trying to convince to continue using Signal, so this is important. ;-) |
I don't think I ever encountered a Lineage OS phone which didn't produce echo. If it's their bug, putting every Lineage user's phone on Signal's hardware blacklist would be counterproductive. |
@haffenloher I have made Signal calls regularly on a Moto G, Moto G2, and Moto G4 Play, all on LineageOS, and never experienced echo issues. |
@AlfonsoMuskedunder To be sure: you do mean that no echo was produced at the other end, no? In any case, it may still be a LineageOS bug, but just not for all devices. @haffenloher Most promising:
May be useful:
In any case, it may be useful to get a LineageOS developer to chip in here. I guess the best way is via a bug report in their tracker referencing this issue. I could do that, but I guess a Signal contributor would be better suited. Also, to not let this idea fall by the wayside: Is disabling echo cancellation when using a headphone a possibility? |
@haffenloher Tested voice calls with Moto G and Galaxy S5, both on latest LineageOS 14.1 builds. They didn't have echo issue. |
I have to report a massive echo during video calls with a Sony Xperia Z5 compact. Model: E5823 The owner is willing to update to a test-build or join the Beta-club. @McLoo Do you still use that model and people you talk to can confirm the problem? |
I have an FP2 (Open OS v17.11.2) with Signal v4.13.6 installed via YalpStore. People I call experience an echo of themselves at their end unless I use headphones. This has been the case since August (following stable update releases). |
If you read this thread from the beginning you will find out that this issue was originally about the FP2. Unfortunately this seems to be an issue with the hardware AEC of the Fairphone ROM. Additionally working around this by blacklisting hw AEC seems to make the phone crash. So if I got it correct Fairphone should either fix their hardware AEC or the crash when it is blacklisted. |
I experience an echo with someone who is using the following: |
Similarly to @ghost, I have a Fairphone 2 running Fairphone Open OS v17.12.1 (based on Android 6.0.1) and Signal v4.14.10. So I tried adding the Fairphone 2 to Signal's hardware AEC blacklist as follows, in
I only tried this change with a single call for now, but the other party's echo was almost gone (i.e. it was still there, but its volume was so low it wasn't really bothersome) and my FP2 did not crash. |
After updating to 4.15 (beta), the following combination leads to an echo when using video chat: The echo occurs only on the other phone (Samsung A5). After 5-10 minutes the echo vanishes; only then and now some minor noise can be heard. |
I really appreciate the effort and all the new features coming to signal last year! However, I can support @Le1b1 on echoing problems with the I also support a settings feature to Enable/Disable AEC. I see the point that it is not easy understandable for non-techies that the one with the clear audio has to disable it. So what about a dialog after the call which asks something like, "did your counterpart complained about hearing himself during the call? (yes/no)" when they click yes, It will disable it, so there is no technical understanding needed. Maybe this dialog has to be shown only once, or once after each update, to not annoy the ones that experience no problems. Also, on a yes, I would kindly ask if it would be possible to send the logs - by clicking a nice button in friendly letters - which would bring even more light to the problem.
|
My communication partners also hear them self, if I use headphones or speaker. Phone: Honor 5X (KIW-L21) |
I understand that you (the developers) would prefer a real solution instead of a workaround. But given that this issue with high impact has not been fixed for a while now, it seems to me that a workaround (setting, disabling AEC when using headphones,…) would be the right thing to do for now. I have been driven back to Skype for communicating with people I'd managed to convince to install Signal. Before the whitelist-to-blacklist change, things worked well for me. I'd like to avoid using Skype for all kinds of reasons, as you probably understand. So, please do something about this. |
I've had to switch to Wire's videochat, which isn't as good. Signal's current blacklist approach is not sustainable. |
I have a oneplus 2 running lineage OS 14.1 and every time I call my friend on speakerphone he (has a iPhone 5 or something) complains how he can hear himself louder than me. This means I can't use speaker phone. Signal version: 4.15.5 ( had this issues a few versions back too... Since I started using Signal which was 5 months ago) |
The Moto G4, running LineageOS 14.1, also causes the person on the other end to hear an echo when speaker is enabled.
|
GitHub Issue Cleanup: |
I have:
Bug description
When doing an audio call on Speaker mode in the new Voice/Video call beta enabled, you can hear your own voice clearly reflected through the microphone. This causes a rather high level of annoyance as you hear your own voice, with a double round-trip time in between, making it a very sad communication companion that constantly interrupts you when you speak.
Steps to reproduce
Actual result:
Annoyingly noise of your own voice
Expected result: Effective echo cancellation on the remote side that cancels out the noises from the speaker against the microphone.
Screenshots
Not applicable
Device info
Device 1: Fairphone 2
Device 2 Nexus 5x
Android version: 7.1.1 and the current fairphone (5/6 something?)
Signal version: Pass.
Link to debug log
Not applicable.
The text was updated successfully, but these errors were encountered: