mirror of
https://github.com/servo/servo.git
synced 2025-10-01 00:59:15 +01:00
webaudio: Implement IIRFilterNode (#33001)
* Basic IIRFIlterNode bindings Signed-off-by: Daniel Adams <msub2official@gmail.com> * Add constructor to BaseAudioContext Signed-off-by: Daniel Adams <msub2official@gmail.com> * Update IDL and use statements Signed-off-by: Daniel Adams <msub2official@gmail.com> * Update non-crashing test expectations Signed-off-by: Daniel Adams <msub2official@gmail.com> * Tidy Signed-off-by: Daniel Adams <msub2official@gmail.com> * Add missing spec link Signed-off-by: Daniel Adams <msub2official@gmail.com> * Optimize error checks Signed-off-by: Daniel Adams <msub2official@gmail.com> * Pass context channel count to servo-media Signed-off-by: Daniel Adams <msub2official@gmail.com> * Update test expectations Signed-off-by: Daniel Adams <msub2official@gmail.com> * Update legacy expectations Signed-off-by: Daniel Adams <msub2official@gmail.com> * Add IIRFilterNode in interfaces.html Signed-off-by: Daniel Adams <msub2official@gmail.com> * Update MANIFEST Signed-off-by: Daniel Adams <msub2official@gmail.com> --------- Signed-off-by: Daniel Adams <msub2official@gmail.com>
This commit is contained in:
parent
1af3ad8a74
commit
5520a9eb50
19 changed files with 206 additions and 175 deletions
|
@ -5,9 +5,6 @@
|
|||
[X node = new IIRFilterNode(c, {"feedforward":[1,0.5\]}) threw "ReferenceError" instead of EcmaScript error TypeError.]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "functionality"]
|
||||
expected: FAIL
|
||||
|
||||
[X node = new IIRFilterNode(, {"feedback":[1,0.5\]}) threw "ReferenceError" instead of EcmaScript error TypeError.]
|
||||
expected: FAIL
|
||||
|
||||
|
@ -17,15 +14,9 @@
|
|||
[< [default constructor\] 1 out of 1 assertions were failed.]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "test AudioNodeOptions"]
|
||||
expected: FAIL
|
||||
|
||||
[< [test AudioNodeOptions\] 1 out of 1 assertions were failed.]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "default constructor"]
|
||||
expected: FAIL
|
||||
|
||||
[< [constructor options\] 2 out of 2 assertions were failed.]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -34,10 +34,3 @@
|
|||
|
||||
[X createIIRFilter([\], [1\]) threw "TypeError" instead of NotSupportedError.]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "parameters"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "exceptions-getFrequencyData"]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -1,10 +1,3 @@
|
|||
[iirfilter-getFrequencyResponse.html]
|
||||
[Executing "compare IIR and biquad"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "1-pole IIR"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "getFrequencyResponse"]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -5,48 +5,9 @@
|
|||
[X createIIRFilter with normalized coefficients incorrectly threw TypeError: "context.createIIRFilter is not a function".]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "coefficient-normalization"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "7: peaking"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "0: lowpass"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "one-zero"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "6: highshelf"]
|
||||
expected: FAIL
|
||||
|
||||
[< [coefficient-normalization\] 2 out of 2 assertions were failed.]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "5: lowshelf"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "one-pole"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "1: highpass"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "4: allpass"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "4th-order-iir"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "multi-channel"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "2: bandpass"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "3: notch"]
|
||||
expected: FAIL
|
||||
|
||||
[# AUDIT TASK RUNNER FINISHED: 1 out of 13 tasks were failed.]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -1,22 +1,3 @@
|
|||
[test-iirfilternode.html]
|
||||
[the first feedback coefficient must be non-zero]
|
||||
expected: FAIL
|
||||
|
||||
[feedback coefficients can not be empty]
|
||||
expected: FAIL
|
||||
|
||||
[IIRFilterNode getFrequencyResponse handles invalid frequencies properly]
|
||||
expected: FAIL
|
||||
|
||||
[more than 20 feedback coefficients can not be used]
|
||||
expected: FAIL
|
||||
|
||||
[feedforward coefficients can not be empty]
|
||||
expected: FAIL
|
||||
|
||||
[at least one feedforward coefficient must be non-zero]
|
||||
expected: FAIL
|
||||
|
||||
[more than 20 feedforward coefficients can not be used]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -1,13 +1,4 @@
|
|||
[ctor-iirfilter.html]
|
||||
[Executing "default constructor"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "test AudioNodeOptions"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "functionality"]
|
||||
expected: FAIL
|
||||
|
||||
[X node0 = new IIRFilterNode(context, {"feedforward":[1\],"feedback":[1,-0.9\]}) incorrectly threw TypeError: "window[name\] is not a constructor".]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -1,10 +1,4 @@
|
|||
[iirfilter-basic.html]
|
||||
[Executing "parameters"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "exceptions-getFrequencyData"]
|
||||
expected: FAIL
|
||||
|
||||
[X context.createIIRFilter does not exist. Got undefined.]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -1,9 +1,3 @@
|
|||
[iirfilter-getFrequencyResponse.html]
|
||||
[Executing "1-pole IIR"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "compare IIR and biquad"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "getFrequencyResponse"]
|
||||
expected: FAIL
|
||||
expected: FAIL
|
|
@ -1,43 +1,4 @@
|
|||
[iirfilter.html]
|
||||
[Executing "coefficient-normalization"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "one-zero"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "one-pole"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "0: lowpass"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "1: highpass"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "2: bandpass"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "3: notch"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "4: allpass"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "5: lowshelf"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "6: highshelf"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "7: peaking"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "multi-channel"]
|
||||
expected: FAIL
|
||||
|
||||
[Executing "4th-order-iir"]
|
||||
expected: FAIL
|
||||
|
||||
[X createIIRFilter with normalized coefficients incorrectly threw TypeError: "context.createIIRFilter is not a function".]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -1,21 +1,3 @@
|
|||
[test-iirfilternode.html]
|
||||
[feedforward coefficients can not be empty]
|
||||
expected: FAIL
|
||||
|
||||
[feedback coefficients can not be empty]
|
||||
expected: FAIL
|
||||
|
||||
[more than 20 feedforward coefficients can not be used]
|
||||
expected: FAIL
|
||||
|
||||
[more than 20 feedback coefficients can not be used]
|
||||
expected: FAIL
|
||||
|
||||
[at least one feedforward coefficient must be non-zero]
|
||||
expected: FAIL
|
||||
|
||||
[the first feedback coefficient must be non-zero]
|
||||
expected: FAIL
|
||||
|
||||
[IIRFilterNode getFrequencyResponse handles invalid frequencies properly]
|
||||
expected: FAIL
|
||||
|
|
2
tests/wpt/mozilla/meta/MANIFEST.json
vendored
2
tests/wpt/mozilla/meta/MANIFEST.json
vendored
|
@ -13459,7 +13459,7 @@
|
|||
]
|
||||
],
|
||||
"interfaces.html": [
|
||||
"2ab9214e53c431e4a599254d4cb498fd75eef4ed",
|
||||
"ee31ffa62be1623831a6379ace46a4784df7608c",
|
||||
[
|
||||
null,
|
||||
{}
|
||||
|
|
|
@ -165,6 +165,7 @@ test_interfaces([
|
|||
"HTMLUListElement",
|
||||
"HTMLUnknownElement",
|
||||
"HTMLVideoElement",
|
||||
"IIRFilterNode",
|
||||
"ImageData",
|
||||
"Image",
|
||||
"InputEvent",
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue