Closed
Bug 985714
Opened 11 years ago
Closed 11 years ago
Report AEC echo levels (ERLE/etc)
Categories
(Core :: WebRTC: Audio/Video, defect)
Core
WebRTC: Audio/Video
Tracking
()
RESOLVED
FIXED
mozilla31
People
(Reporter: jesup, Assigned: jib)
References
(Blocks 1 open bug)
Details
(Whiteboard: [p=5, 1.5:p1, ft:webrtc])
Attachments
(1 file, 1 obsolete file)
5.67 KB,
patch
|
jib
:
review+
|
Details | Diff | Splinter Review |
We should report echo levels in the AEC. Note that calculating them can cost CPU; so we don't want to blindly enable this all the time. We need to consider what the options are. Also, it can take a while to get results after enabling.
Right now, I've made it depend on NSPR_LOG_MODULES=mediamanager:5 -- we likely should change this. Currently the patch I have dumps the stats once every few second or so.
We should add it to about:webrtc (note: this will be complicated by the cost of measuring it/enabling/etc)
Reporter | ||
Comment 1•11 years ago
|
||
I did some profiling, and on a debug build it used <0.1% of the CPU used in an audio-only call on linux ... i.e. very little, so we can likely leave it on.
On the downside: it is *very* hard to interpret ERLE in a vacuum; it depends heavily on the input signals, noise, volume, etc. So telemetry on ERLE may be very hard to interpret/misleading. Also, if used with telemetry we'd want to segregate it so headphone and speakerphone uses don't get mixed (we could segregate roughly based on ERL as a stand-in for knowing if it's a headset or not).
Jean-Marc - do you know any good automated metrics beyond ERL/ERLE we could use? I'll also consult my Voice Quality for mobile book by Perry.
Flags: needinfo?(jmvalin)
Comment 2•11 years ago
|
||
I think ERLE is probably a good metric here. OTOH, ERL is completely meaningless. The problem is that turning the volume up by X dB on your external speakers while turning it down X dB in the mixer will increase the ERL by X dB even though nothing actually changed in practice. The only metric I could think of would be a signal-to-echo ratio (SER). Since the signal power is fixed, then the ERLE also happens to be the improvement in SER.
Flags: needinfo?(jmvalin)
Reporter | ||
Updated•11 years ago
|
Assignee: nobody → jib
Reporter | ||
Comment 3•11 years ago
|
||
Reporter | ||
Updated•11 years ago
|
Attachment #8393802 -
Attachment is obsolete: true
Reporter | ||
Updated•11 years ago
|
Attachment #8394951 -
Flags: review?(jib)
Assignee | ||
Comment 4•11 years ago
|
||
Comment on attachment 8394951 [details] [diff] [review]
Monitor AEC echo levels (ERLE/etc) in gUM
Review of attachment 8394951 [details] [diff] [review]:
-----------------------------------------------------------------
lgtm, with the caveat that I haven't seen the patch that this patch depends on (there's no update_echo or mStarted in the tree), so bear in mind when landing.
::: content/media/webrtc/MediaEngineWebRTCAudio.cpp
@@ +589,5 @@
>
> +#ifdef PR_LOGGING
> + mSamples += length;
> + if (mSamples > samplingFreq) {
> + mSamples -= samplingFreq;
Is length ever > 2*samplingFreq? If so then you fall behind here.
Maybe a while(>) -=, an assert, or mSamples %= samplingFreq?
Attachment #8394951 -
Flags: review?(jib) → review+
Reporter | ||
Comment 5•11 years ago
|
||
Target Milestone: --- → mozilla31
Reporter | ||
Comment 6•11 years ago
|
||
Backed out for perma-orange on b2g emulator M10 unrelated to this patch
https://tbpl.mozilla.org/?tree=Mozilla-Inbound&rev=cb894b5d342f
http://hg.mozilla.org/integration/mozilla-inbound/rev/c0eaa844f2f0
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Reporter | ||
Comment 8•11 years ago
|
||
Backed out of central:
https://hg.mozilla.org/mozilla-central/rev/ac6cbaa47f34
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Reporter | ||
Comment 9•11 years ago
|
||
Reporter | ||
Comment 10•11 years ago
|
||
Reporter | ||
Comment 11•11 years ago
|
||
Comment 12•11 years ago
|
||
Status: REOPENED → RESOLVED
Closed: 11 years ago → 11 years ago
Resolution: --- → FIXED
Updated•11 years ago
|
Whiteboard: [s=fx32]
Updated•11 years ago
|
Whiteboard: [s=fx32] → [p=5, 1.5:p1, ft:webrtc]
You need to log in
before you can comment on or make changes to this bug.
Description
•