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

Issue 2851873003: Compute the tail time for an IIRFilter from its coefficients (Closed)

Created:
3 years, 7 months ago by Raymond Toy
Modified:
3 years, 7 months ago
Reviewers:
hongchan
CC:
chromium-reviews, blink-reviews, haraken, kinuko+watch, Raymond Toy, hongchan
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

Compute the tail time for an IIRFilter from its coefficients For an IIRFilterNode the tail time is currently set to infinity, which is mathmatically true, but impractical because that keeps the IIRFilter alive even if the output is very small. Instead, compute a tail time based on the coefficients of the IIR filter. The tail time is the estimated time where the impulse response is sufficiently small that we can say that output is essentially zero. By doing so, an IIRFilterNode can disconnect itself from downstreams nodes, reducing complexity of the graph. Without this, downstream nodes stay alive processing silence. BUG=612215 TEST=iirfilter.html Review-Url: https://codereview.chromium.org/2851873003 Cr-Commit-Position: refs/heads/master@{#472845} Committed: https://chromium.googlesource.com/chromium/src/+/7615be681fe875bc5e6e5715e1455bbffa0a5eb3

Patch Set 1 #

Patch Set 2 : Implement IIR tail-time with tests #

Patch Set 3 : More tests #

Patch Set 4 : Rebase #

Patch Set 5 : Adjust threshold #

Patch Set 6 : Rebase #

Total comments: 12

Patch Set 7 : Address review comments #

Patch Set 8 : Rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+379 lines, -12 lines) Patch
A third_party/WebKit/LayoutTests/webaudio/IIRFilter/iir-tail-time.html View 1 2 1 chunk +289 lines, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/webaudio/IIRFilter/iirfilter.html View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/modules/webaudio/IIRDSPKernel.h View 2 chunks +4 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/modules/webaudio/IIRDSPKernel.cpp View 2 chunks +7 lines, -8 lines 0 comments Download
M third_party/WebKit/Source/platform/audio/IIRFilter.h View 1 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/platform/audio/IIRFilter.cpp View 1 2 3 4 5 6 3 chunks +72 lines, -0 lines 0 comments Download

Messages

Total messages: 25 (11 generated)
Raymond Toy
PTAL
3 years, 7 months ago (2017-05-12 16:06:53 UTC) #2
hongchan
Mostly nits and 1 open question. https://codereview.chromium.org/2851873003/diff/100001/third_party/WebKit/Source/modules/webaudio/IIRDSPKernel.cpp File third_party/WebKit/Source/modules/webaudio/IIRDSPKernel.cpp (right): https://codereview.chromium.org/2851873003/diff/100001/third_party/WebKit/Source/modules/webaudio/IIRDSPKernel.cpp#newcode14 third_party/WebKit/Source/modules/webaudio/IIRDSPKernel.cpp:14: tail_time_ = iir_.TailTime(processor->SampleRate()); ...
3 years, 7 months ago (2017-05-12 16:24:05 UTC) #3
Raymond Toy
https://codereview.chromium.org/2851873003/diff/100001/third_party/WebKit/Source/modules/webaudio/IIRDSPKernel.cpp File third_party/WebKit/Source/modules/webaudio/IIRDSPKernel.cpp (right): https://codereview.chromium.org/2851873003/diff/100001/third_party/WebKit/Source/modules/webaudio/IIRDSPKernel.cpp#newcode14 third_party/WebKit/Source/modules/webaudio/IIRDSPKernel.cpp:14: tail_time_ = iir_.TailTime(processor->SampleRate()); On 2017/05/12 16:24:04, hongchan wrote: > ...
3 years, 7 months ago (2017-05-12 17:33:18 UTC) #4
hongchan
https://codereview.chromium.org/2851873003/diff/100001/third_party/WebKit/Source/platform/audio/IIRFilter.h File third_party/WebKit/Source/platform/audio/IIRFilter.h (right): https://codereview.chromium.org/2851873003/diff/100001/third_party/WebKit/Source/platform/audio/IIRFilter.h#newcode34 third_party/WebKit/Source/platform/audio/IIRFilter.h:34: double TailTime(double sample_rate); On 2017/05/12 17:33:18, Raymond Toy wrote: ...
3 years, 7 months ago (2017-05-12 17:36:45 UTC) #5
Raymond Toy
https://codereview.chromium.org/2851873003/diff/100001/third_party/WebKit/Source/platform/audio/IIRFilter.cpp File third_party/WebKit/Source/platform/audio/IIRFilter.cpp (right): https://codereview.chromium.org/2851873003/diff/100001/third_party/WebKit/Source/platform/audio/IIRFilter.cpp#newcode149 third_party/WebKit/Source/platform/audio/IIRFilter.cpp:149: const double kMaxTailTime = 60; On 2017/05/12 16:24:05, hongchan ...
3 years, 7 months ago (2017-05-12 19:42:51 UTC) #6
hongchan
lgtm
3 years, 7 months ago (2017-05-16 22:30:02 UTC) #7
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2851873003/120001
3 years, 7 months ago (2017-05-17 15:33:11 UTC) #9
commit-bot: I haz the power
Try jobs failed on following builders: linux_chromium_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_rel_ng/builds/457520)
3 years, 7 months ago (2017-05-17 17:15:32 UTC) #11
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2851873003/120001
3 years, 7 months ago (2017-05-17 19:26:29 UTC) #13
commit-bot: I haz the power
Try jobs failed on following builders: linux_chromium_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_rel_ng/builds/457831)
3 years, 7 months ago (2017-05-17 21:40:05 UTC) #15
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2851873003/140001
3 years, 7 months ago (2017-05-17 22:19:19 UTC) #18
commit-bot: I haz the power
Try jobs failed on following builders: linux_android_rel_ng on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/linux_android_rel_ng/builds/296714)
3 years, 7 months ago (2017-05-18 00:38:43 UTC) #20
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2851873003/140001
3 years, 7 months ago (2017-05-18 15:14:14 UTC) #22
commit-bot: I haz the power
3 years, 7 months ago (2017-05-18 16:51:12 UTC) #25
Message was sent while issue was closed.
Committed patchset #8 (id:140001) as
https://chromium.googlesource.com/chromium/src/+/7615be681fe875bc5e6e5715e145...

Powered by Google App Engine
This is Rietveld 408576698