[Webkit-unassigned] [Bug 77509] Enable IPP for Biquad filter

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Sun Feb 12 22:35:47 PST 2012


https://bugs.webkit.org/show_bug.cgi?id=77509





--- Comment #28 from xingnan.wang at intel.com  2012-02-12 22:35:47 PST ---
(From update of attachment 126449)
View in context: https://bugs.webkit.org/attachment.cgi?id=126449&action=review

>> LayoutTests/webaudio/resources/biquad-testing.js:73
>> +        a2 = 0;
> 
> nit: Can you explain why this is needed now when it wasn't needed without IPP?  When I run this with freq = 0 (and q = 1 and gain = 1) I get b0=b1=b2=0 and a1=-2 and a2=1.  Is it because there's a pole at 1?

I found you set b0=b1=b2=a1=a2=0 in setLowpassparams() in Biquad.cpp, and did not in the test script, I`ve thought they should be the same. Any reason to treat freq==0 condition differently?

>> LayoutTests/webaudio/resources/biquad-testing.js:386
>> +    var a2 = filterCoef.a2;
> 
> Sorry about that.  I'm surprised this worked at all before.

All right, it seems JS is smarter than C++ ~

>> Source/WebCore/platform/audio/Biquad.cpp:256
>> +    setNormalizedCoefficients(m_b0, m_b1, m_b2, 1, m_a1, m_a2);
> 
> It seems odd that we first set the values directly on the member variables in this method, then call setNormalizedCoefficients().
> 
> Can we improve this in this method and setHighpassParams() and any similar methods to be more consistent and similar to what we do in setLowShelfParams()

That`s right, I`ll refine it.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list