OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2010 Google Inc. All rights reserved. | 2 * Copyright (C) 2010 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
6 * are met: | 6 * are met: |
7 * | 7 * |
8 * 1. Redistributions of source code must retain the above copyright | 8 * 1. Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * 2. Redistributions in binary form must reproduce the above copyright | 10 * 2. Redistributions in binary form must reproduce the above copyright |
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
85 | 85 |
86 // Filter coefficients. The filter is defined as | 86 // Filter coefficients. The filter is defined as |
87 // | 87 // |
88 // y[n] + m_a1*y[n-1] + m_a2*y[n-2] = m_b0*x[n] + m_b1*x[n-1] + m_b2*x[n-2]. | 88 // y[n] + m_a1*y[n-1] + m_a2*y[n-2] = m_b0*x[n] + m_b1*x[n-1] + m_b2*x[n-2]. |
89 double m_b0; | 89 double m_b0; |
90 double m_b1; | 90 double m_b1; |
91 double m_b2; | 91 double m_b2; |
92 double m_a1; | 92 double m_a1; |
93 double m_a2; | 93 double m_a2; |
94 | 94 |
95 #if OS(DARWIN) | 95 #if OS(MACOSX) |
96 void processFast(const float* sourceP, float* destP, size_t framesToProcess)
; | 96 void processFast(const float* sourceP, float* destP, size_t framesToProcess)
; |
97 void processSliceFast(double* sourceP, double* destP, double* coefficientsP,
size_t framesToProcess); | 97 void processSliceFast(double* sourceP, double* destP, double* coefficientsP,
size_t framesToProcess); |
98 | 98 |
99 AudioDoubleArray m_inputBuffer; | 99 AudioDoubleArray m_inputBuffer; |
100 AudioDoubleArray m_outputBuffer; | 100 AudioDoubleArray m_outputBuffer; |
101 | 101 |
102 #elif USE(WEBAUDIO_IPP) | 102 #elif USE(WEBAUDIO_IPP) |
103 IppsIIRState64f_32f* m_biquadState; | 103 IppsIIRState64f_32f* m_biquadState; |
104 Ipp8u* m_ippInternalBuffer; | 104 Ipp8u* m_ippInternalBuffer; |
105 | 105 |
106 #else | 106 #else |
107 // Filter memory | 107 // Filter memory |
108 double m_x1; // input delayed by 1 sample | 108 double m_x1; // input delayed by 1 sample |
109 double m_x2; // input delayed by 2 samples | 109 double m_x2; // input delayed by 2 samples |
110 double m_y1; // output delayed by 1 sample | 110 double m_y1; // output delayed by 1 sample |
111 double m_y2; // output delayed by 2 samples | 111 double m_y2; // output delayed by 2 samples |
112 #endif | 112 #endif |
113 }; | 113 }; |
114 | 114 |
115 } // namespace WebCore | 115 } // namespace WebCore |
116 | 116 |
117 #endif // Biquad_h | 117 #endif // Biquad_h |
OLD | NEW |