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

Issue 1361233004: Implement IIRFilter node for WebAudio. (Closed)

Created:
5 years, 3 months ago by Raymond Toy
Modified:
4 years, 11 months ago
CC:
blink-reviews
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Implement IIRFilter node for WebAudio. A general IIRFilterNode is implemented here. The WebAudio bug and discussion is https://github.com/WebAudio/web-audio-api/issues/323. The spec is http://webaudio.github.io/web-audio-api/#the-iirfilternode-interface BUG=514782 TEST=iirfilter.html, iirfilter-basic.html, iirfilter-getFrequencyResponse.html Committed: https://crrev.com/98d09f13ad251f35173a57c8fab10a8cfe11b479 Cr-Commit-Position: refs/heads/master@{#369641}

Patch Set 1 #

Patch Set 2 : Rebase #

Patch Set 3 : Update histograms.xml #

Total comments: 8

Patch Set 4 : Update according to review #

Total comments: 8

Patch Set 5 : Rebase, use double-precision coef, apply review comments. #

Patch Set 6 : Add SNR test #

Patch Set 7 : Limit number of digits printed #

Patch Set 8 : Print fewer digits #

Patch Set 9 : Reduce printed precision for 4-th order test #

Patch Set 10 : Rebase #

Patch Set 11 : Rebase #

Patch Set 12 : Rebase #

Patch Set 13 : Fix test issue on max order and rebase #

Patch Set 14 : Rebase #

Patch Set 15 : Fix global-interface-listing #

Total comments: 45

Patch Set 16 : Rebase and address review comments #

Patch Set 17 : Fix typo #

Patch Set 18 : Rebase for UseCounter.h #

Patch Set 19 : Fix test issue by printing fewer digits. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+1851 lines, -609 lines) Patch
M third_party/WebKit/LayoutTests/virtual/stable/webexposed/global-interface-listing-expected.txt View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 3 chunks +5 lines, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/webaudio/biquad-allpass.html View 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/webaudio/biquad-bandpass.html View 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/webaudio/biquad-getFrequencyResponse.html View 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/webaudio/biquad-highpass.html View 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/webaudio/biquad-highshelf.html View 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/webaudio/biquad-lowpass.html View 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/webaudio/biquad-lowshelf.html View 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/webaudio/biquad-notch.html View 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/webaudio/biquad-peaking.html View 1 chunk +1 line, -0 lines 0 comments Download
A third_party/WebKit/LayoutTests/webaudio/iirfilter.html View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 chunk +574 lines, -0 lines 0 comments Download
A third_party/WebKit/LayoutTests/webaudio/iirfilter-basic.html View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +210 lines, -0 lines 0 comments Download
A third_party/WebKit/LayoutTests/webaudio/iirfilter-basic-expected.txt View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +40 lines, -0 lines 0 comments Download
A third_party/WebKit/LayoutTests/webaudio/iirfilter-expected.txt View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 chunk +38 lines, -0 lines 0 comments Download
A third_party/WebKit/LayoutTests/webaudio/iirfilter-getFrequencyResponse.html View 1 2 3 4 1 chunk +132 lines, -0 lines 0 comments Download
A third_party/WebKit/LayoutTests/webaudio/iirfilter-getFrequencyResponse-expected.txt View 1 chunk +17 lines, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/webaudio/resources/audio-testing.js View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 12 chunks +145 lines, -29 lines 0 comments Download
A + third_party/WebKit/LayoutTests/webaudio/resources/biquad-filters.js View 1 2 3 4 6 chunks +25 lines, -205 lines 0 comments Download
M third_party/WebKit/LayoutTests/webaudio/resources/biquad-testing.js View 1 2 3 4 1 chunk +0 lines, -369 lines 0 comments Download
M third_party/WebKit/LayoutTests/webexposed/global-interface-listing-expected.txt View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 3 chunks +5 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/frame/UseCounter.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/modules/modules.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 2 chunks +7 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/modules/webaudio/AbstractAudioContext.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 3 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/modules/webaudio/AbstractAudioContext.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 3 chunks +86 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/modules/webaudio/AudioContext.idl View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/modules/webaudio/AudioNode.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/modules/webaudio/AudioNode.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +7 lines, -6 lines 0 comments Download
A third_party/WebKit/Source/modules/webaudio/IIRDSPKernel.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +41 lines, -0 lines 0 comments Download
A third_party/WebKit/Source/modules/webaudio/IIRDSPKernel.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +54 lines, -0 lines 0 comments Download
A third_party/WebKit/Source/modules/webaudio/IIRFilterNode.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +38 lines, -0 lines 0 comments Download
A third_party/WebKit/Source/modules/webaudio/IIRFilterNode.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +80 lines, -0 lines 0 comments Download
A third_party/WebKit/Source/modules/webaudio/IIRFilterNode.idl View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +9 lines, -0 lines 0 comments Download
A third_party/WebKit/Source/modules/webaudio/IIRProcessor.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +44 lines, -0 lines 0 comments Download
A third_party/WebKit/Source/modules/webaudio/IIRProcessor.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +81 lines, -0 lines 0 comments Download
A third_party/WebKit/Source/platform/audio/IIRFilter.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +59 lines, -0 lines 0 comments Download
A third_party/WebKit/Source/platform/audio/IIRFilter.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +133 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/platform/blink_platform.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +2 lines, -0 lines 0 comments Download
M tools/metrics/histograms/histograms.xml View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 38 (16 generated)
Raymond Toy
5 years, 2 months ago (2015-09-29 22:14:53 UTC) #2
hongchan
I strongly suggest to run the layout test with '--enable-leak-detection' option before we move forward. ...
5 years, 2 months ago (2015-10-09 18:10:00 UTC) #3
Raymond Toy
On 2015/10/09 at 18:10:00, hongchan wrote: > I strongly suggest to run the layout test ...
5 years, 2 months ago (2015-10-09 19:21:11 UTC) #4
Raymond Toy
https://chromiumcodereview.appspot.com/1361233004/diff/40001/third_party/WebKit/Source/modules/webaudio/AudioContext.idl File third_party/WebKit/Source/modules/webaudio/AudioContext.idl (right): https://chromiumcodereview.appspot.com/1361233004/diff/40001/third_party/WebKit/Source/modules/webaudio/AudioContext.idl#newcode95 third_party/WebKit/Source/modules/webaudio/AudioContext.idl:95: // IIR Filter On 2015/10/09 at 18:10:00, hoch wrote: ...
5 years, 2 months ago (2015-10-09 19:41:15 UTC) #5
hongchan
LGTM with nits. https://chromiumcodereview.appspot.com/1361233004/diff/50001/third_party/WebKit/LayoutTests/webaudio/iirfilter-getFrequencyResponse.html File third_party/WebKit/LayoutTests/webaudio/iirfilter-getFrequencyResponse.html (right): https://chromiumcodereview.appspot.com/1361233004/diff/50001/third_party/WebKit/LayoutTests/webaudio/iirfilter-getFrequencyResponse.html#newcode123 third_party/WebKit/LayoutTests/webaudio/iirfilter-getFrequencyResponse.html:123: runTest(); Can the content of runTest() ...
5 years, 2 months ago (2015-10-12 22:55:56 UTC) #6
Raymond Toy
Currently holding off uploading any changes pending the resolution of https://github.com/WebAudio/web-audio-api/issues/631 which makes the coefficients ...
5 years, 2 months ago (2015-10-16 17:04:14 UTC) #7
Raymond Toy
https://chromiumcodereview.appspot.com/1361233004/diff/50001/third_party/WebKit/LayoutTests/webaudio/iirfilter-getFrequencyResponse.html File third_party/WebKit/LayoutTests/webaudio/iirfilter-getFrequencyResponse.html (right): https://chromiumcodereview.appspot.com/1361233004/diff/50001/third_party/WebKit/LayoutTests/webaudio/iirfilter-getFrequencyResponse.html#newcode123 third_party/WebKit/LayoutTests/webaudio/iirfilter-getFrequencyResponse.html:123: runTest(); On 2015/10/12 22:55:56, hoch wrote: > Can the ...
5 years, 1 month ago (2015-10-29 17:10:00 UTC) #8
Raymond Toy
PTAL for oilpan issues.
4 years, 11 months ago (2016-01-12 17:12:38 UTC) #10
haraken
The oilpan part LGTM. The IDL change needs to be reviewed by an API owner. ...
4 years, 11 months ago (2016-01-13 02:42:15 UTC) #12
tkent
Web-exposed change LGTM. We have the approved intent-to-ship thread. https://codereview.chromium.org/1361233004/diff/270001/third_party/WebKit/Source/modules/webaudio/AbstractAudioContext.cpp File third_party/WebKit/Source/modules/webaudio/AbstractAudioContext.cpp (right): https://codereview.chromium.org/1361233004/diff/270001/third_party/WebKit/Source/modules/webaudio/AbstractAudioContext.cpp#newcode564 third_party/WebKit/Source/modules/webaudio/AbstractAudioContext.cpp:564: ...
4 years, 11 months ago (2016-01-13 03:28:29 UTC) #13
Raymond Toy
Thanks for the reviews! https://codereview.chromium.org/1361233004/diff/270001/third_party/WebKit/Source/modules/webaudio/AbstractAudioContext.cpp File third_party/WebKit/Source/modules/webaudio/AbstractAudioContext.cpp (right): https://codereview.chromium.org/1361233004/diff/270001/third_party/WebKit/Source/modules/webaudio/AbstractAudioContext.cpp#newcode564 third_party/WebKit/Source/modules/webaudio/AbstractAudioContext.cpp:564: if (!feedbackCoef.size() || (feedbackCoef.size() > ...
4 years, 11 months ago (2016-01-13 18:30:54 UTC) #14
Raymond Toy
isherman@ PTAL at histograms.xml
4 years, 11 months ago (2016-01-13 18:34:27 UTC) #16
Ilya Sherman
histograms.xml lgtm
4 years, 11 months ago (2016-01-13 19:50:16 UTC) #17
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1361233004/290001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1361233004/290001
4 years, 11 months ago (2016-01-13 21:09:00 UTC) #20
commit-bot: I haz the power
Try jobs failed on following builders: android_arm64_dbg_recipe on tryserver.chromium.android (JOB_TIMED_OUT, no build URL) android_chromium_gn_compile_rel on ...
4 years, 11 months ago (2016-01-13 23:13:51 UTC) #22
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1361233004/310001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1361233004/310001
4 years, 11 months ago (2016-01-14 18:17:44 UTC) #25
commit-bot: I haz the power
Try jobs failed on following builders: ios_dbg_simulator_ninja on tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios_dbg_simulator_ninja/builds/117124) ios_rel_device_ninja on tryserver.chromium.mac (JOB_FAILED, ...
4 years, 11 months ago (2016-01-14 18:21:18 UTC) #27
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1361233004/330001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1361233004/330001
4 years, 11 months ago (2016-01-14 19:15:39 UTC) #30
commit-bot: I haz the power
Try jobs failed on following builders: mac_chromium_rel_ng on tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_ng/builds/165308)
4 years, 11 months ago (2016-01-14 21:17:03 UTC) #32
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1361233004/350001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1361233004/350001
4 years, 11 months ago (2016-01-14 22:10:31 UTC) #35
commit-bot: I haz the power
Committed patchset #19 (id:350001)
4 years, 11 months ago (2016-01-15 01:09:40 UTC) #36
commit-bot: I haz the power
4 years, 11 months ago (2016-01-15 01:10:27 UTC) #38
Message was sent while issue was closed.
Patchset 19 (id:??) landed as
https://crrev.com/98d09f13ad251f35173a57c8fab10a8cfe11b479
Cr-Commit-Position: refs/heads/master@{#369641}

Powered by Google App Engine
This is Rietveld 408576698