Пример #1
0
            /* apply filter to an array of values, adding result to output array */
            public void Apply(
                float[] XinVector,
                int XInVectorOffset,
                float[] YoutVector,
                int YoutVectorOffset,
                int VectorLength,
                float OutputScaling,
                SynthParamRec SynthParams)
            {
                ParametricEqualizer2Rec Filter = this;

                IIR2DirectIMAcc(
                    ref Filter.iir,
                    XinVector,
                    XInVectorOffset,
                    YoutVector,
                    YoutVectorOffset,
                    VectorLength,
                    OutputScaling);
            }
Пример #2
0
            public static void SetParametricEqualizer2Coefficients(
                ParametricEqualizer2Rec Filter,
                double Cutoff,
                double Bandwidth,
                double Gain,
                double SamplingRate)
            {
                if ((Cutoff == Filter.OldCutoff) && (Bandwidth == Filter.OldBandwidth) && (Gain == Filter.OldGain))
                {
                    return;
                }
                Filter.OldCutoff    = Cutoff;
                Filter.OldBandwidth = Bandwidth;
                Filter.OldGain      = Gain;

                ComputeParametricEqualizer2Coefficients(
                    ref Filter.iir,
                    Cutoff,
                    Bandwidth,
                    Gain,
                    SamplingRate);
            }