Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(202)

Issue 1693823004: Use VAD to get a better speech power estimation in the IntelligibilityEnhancer (Closed)

Created:
4 years, 10 months ago by aluebs-webrtc
Modified:
4 years, 10 months ago
Reviewers:
hlundin-webrtc, turaj
CC:
webrtc-reviews_webrtc.org, peah-webrtc, Andrew MacDonald, tterriberry_mozilla.com, audio-team_agora.io, kwiberg-webrtc, minyue-webrtc, the sun, bjornv1
Base URL:
https://chromium.googlesource.com/external/webrtc.git@pow
Target Ref:
refs/pending/heads/master
Project:
webrtc
Visibility:
Public.

Description

Use VAD to get a better speech power estimation in the IntelligibilityEnhancer R=henrik.lundin@webrtc.org, turaj@webrtc.org Committed: https://chromium.googlesource.com/external/webrtc/+/18fcbcf48c190b6248cd16ef044d1edb79cba040

Patch Set 1 #

Total comments: 40

Patch Set 2 : Rebasing #

Patch Set 3 : Make gain change limit relative #

Total comments: 6

Patch Set 4 : Make sure the gain never becomes zero #

Patch Set 5 : Make PowerEstimator a template class #

Patch Set 6 : Rebasing #

Patch Set 7 : Returned to the horrible solution of having a constant for a size_t one #

Patch Set 8 : Use f for float #

Messages

Total messages: 31 (12 generated)
aluebs-webrtc
4 years, 10 months ago (2016-02-12 19:40:31 UTC) #2
turaj
https://codereview.webrtc.org/1693823004/diff/1/webrtc/modules/audio_processing/intelligibility/intelligibility_enhancer.cc File webrtc/modules/audio_processing/intelligibility/intelligibility_enhancer.cc (right): https://codereview.webrtc.org/1693823004/diff/1/webrtc/modules/audio_processing/intelligibility/intelligibility_enhancer.cc#newcode38 webrtc/modules/audio_processing/intelligibility/intelligibility_enhancer.cc:38: const float kGainChangeLimit = 0.1f; // Maximum change in ...
4 years, 10 months ago (2016-02-13 00:09:43 UTC) #3
hlundin-webrtc
https://codereview.webrtc.org/1693823004/diff/1/webrtc/modules/audio_processing/intelligibility/intelligibility_enhancer.cc File webrtc/modules/audio_processing/intelligibility/intelligibility_enhancer.cc (right): https://codereview.webrtc.org/1693823004/diff/1/webrtc/modules/audio_processing/intelligibility/intelligibility_enhancer.cc#newcode37 webrtc/modules/audio_processing/intelligibility/intelligibility_enhancer.cc:37: const float kDecayRate = 0.97f; // Power estimation decay ...
4 years, 10 months ago (2016-02-15 13:05:12 UTC) #4
aluebs-webrtc
https://codereview.webrtc.org/1693823004/diff/1/webrtc/modules/audio_processing/intelligibility/intelligibility_enhancer.cc File webrtc/modules/audio_processing/intelligibility/intelligibility_enhancer.cc (right): https://codereview.webrtc.org/1693823004/diff/1/webrtc/modules/audio_processing/intelligibility/intelligibility_enhancer.cc#newcode37 webrtc/modules/audio_processing/intelligibility/intelligibility_enhancer.cc:37: const float kDecayRate = 0.97f; // Power estimation decay ...
4 years, 10 months ago (2016-02-19 03:56:31 UTC) #5
turaj
https://codereview.webrtc.org/1693823004/diff/1/webrtc/modules/audio_processing/intelligibility/intelligibility_enhancer.h File webrtc/modules/audio_processing/intelligibility/intelligibility_enhancer.h (left): https://codereview.webrtc.org/1693823004/diff/1/webrtc/modules/audio_processing/intelligibility/intelligibility_enhancer.h#oldcode51 webrtc/modules/audio_processing/intelligibility/intelligibility_enhancer.h:51: explicit IntelligibilityEnhancer(const Config& config); On 2016/02/19 03:56:31, aluebs-webrtc wrote: ...
4 years, 10 months ago (2016-02-19 16:48:47 UTC) #6
aluebs-webrtc
https://codereview.webrtc.org/1693823004/diff/1/webrtc/modules/audio_processing/intelligibility/intelligibility_enhancer.h File webrtc/modules/audio_processing/intelligibility/intelligibility_enhancer.h (left): https://codereview.webrtc.org/1693823004/diff/1/webrtc/modules/audio_processing/intelligibility/intelligibility_enhancer.h#oldcode51 webrtc/modules/audio_processing/intelligibility/intelligibility_enhancer.h:51: explicit IntelligibilityEnhancer(const Config& config); On 2016/02/19 16:48:47, turaj wrote: ...
4 years, 10 months ago (2016-02-19 19:30:48 UTC) #7
hlundin-webrtc
The diff got horrible by the rebase you did in patch set 2. Please, avoid ...
4 years, 10 months ago (2016-02-22 11:03:13 UTC) #8
turaj
LGTM, with an optional change. https://codereview.webrtc.org/1693823004/diff/40001/webrtc/modules/audio_processing/intelligibility/intelligibility_utils.h File webrtc/modules/audio_processing/intelligibility/intelligibility_utils.h (right): https://codereview.webrtc.org/1693823004/diff/40001/webrtc/modules/audio_processing/intelligibility/intelligibility_utils.h#newcode33 webrtc/modules/audio_processing/intelligibility/intelligibility_utils.h:33: template <typename T> Like ...
4 years, 10 months ago (2016-02-22 17:36:54 UTC) #9
aluebs-webrtc
Sorry if the diff got horrible, I find that as long as it is kept ...
4 years, 10 months ago (2016-02-22 20:41:03 UTC) #10
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1693823004/80001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1693823004/80001
4 years, 10 months ago (2016-02-22 20:41:30 UTC) #13
commit-bot: I haz the power
Try jobs failed on following builders: ios64_sim_dbg on tryserver.webrtc (JOB_FAILED, http://build.chromium.org/p/tryserver.webrtc/builders/ios64_sim_dbg/builds/5317) ios_arm64_rel on tryserver.webrtc (JOB_FAILED, ...
4 years, 10 months ago (2016-02-22 20:42:25 UTC) #15
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1693823004/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1693823004/100001
4 years, 10 months ago (2016-02-22 21:05:28 UTC) #18
commit-bot: I haz the power
Try jobs failed on following builders: ios32_sim_dbg on tryserver.webrtc (JOB_FAILED, http://build.chromium.org/p/tryserver.webrtc/builders/ios32_sim_dbg/builds/5320) ios_arm64_dbg on tryserver.webrtc (JOB_FAILED, ...
4 years, 10 months ago (2016-02-22 21:07:43 UTC) #20
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1693823004/120001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1693823004/120001
4 years, 10 months ago (2016-02-22 22:20:01 UTC) #23
commit-bot: I haz the power
Exceeded global retry quota
4 years, 10 months ago (2016-02-22 22:21:36 UTC) #25
commit-bot: I haz the power
Patchset 8 (id:??) landed as https://crrev.com/18fcbcf48c190b6248cd16ef044d1edb79cba040 Cr-Commit-Position: refs/heads/master@{#11713}
4 years, 10 months ago (2016-02-22 23:57:49 UTC) #27
aluebs-webrtc
Committed patchset #8 (id:140001) manually as 18fcbcf48c190b6248cd16ef044d1edb79cba040 (presubmit successful).
4 years, 10 months ago (2016-02-22 23:57:50 UTC) #29
hlundin-webrtc
On 2016/02/22 20:41:03, aluebs-webrtc wrote: > Sorry if the diff got horrible, I find that ...
4 years, 10 months ago (2016-02-23 14:22:50 UTC) #30
aluebs-webrtc
4 years, 10 months ago (2016-02-23 16:15:34 UTC) #31
Message was sent while issue was closed.
On 2016/02/23 14:22:50, hlundin-webrtc wrote:
> On 2016/02/22 20:41:03, aluebs-webrtc wrote:
> > Sorry if the diff got horrible, I find that as long as it is kept in its own
> > separate patch it is easier to handle. Will try to not do it next time.
> 
> Yes, rebasing in a separate patch set is better than baking it with your own
> changes. But if I have reviewed patch set 1, and then you make a rebase in
patch
> set 2, followed by patch set 3 containing updates in response to my review,
what
> I want to see really is the diff between 1 and 3. I will of course look at the
> diff between 2 and 3, but since my memory is weak and poor, I really need my
own
> comments in patch set 1 on the left hand to be able to see if you did what I
> told you to. :)
> 
> > 
> >
>
https://codereview.webrtc.org/1693823004/diff/40001/webrtc/modules/audio_proc...
> > File webrtc/modules/audio_processing/intelligibility/intelligibility_utils.h
> > (right):
> > 
> >
>
https://codereview.webrtc.org/1693823004/diff/40001/webrtc/modules/audio_proc...
> > webrtc/modules/audio_processing/intelligibility/intelligibility_utils.h:33:
> > template <typename T>
> > On 2016/02/22 17:36:53, turaj wrote:
> > > 
> > > Like you, I really don't know what is preferred with respect to templating
> > > member function vs templating class, nor header-file implementation versus
> > > source-file implementation. However, the reason I proposed to have
template,
> > > beside saving couple of lines of code, was to prevent a potential bug my
> > mixing
> > > complex and float averaging. If that concern is valid (which I'm not sure
as
> > > this is an internal class and only intelligibility is using it) then
> > templating
> > > like this is not serving the purpose. Things can still go wrong. 
> > > 
> > > Templating class, on the other hand, prevents the above issue as
> > intelligibility
> > > will have
> > > 
> > > PowerEstimator<float> noise_power_;
> > > PowerEstimator<std::complex<float>> speech_power_;
> > > 
> > > Given the above, I a bit prefer class templating, but I don't have strong
> > > opinion, so I leave it up to you.
> > 
> > That is an excellent point! Changed it to a template class.

I see how that can be frustrating. Will do my best to not do it again :)

Powered by Google App Engine
This is Rietveld 408576698