float filter(float in0, float r, float fc, float fs) { float dvar; dvar=in0; // filter //float const yn = b0a0*in0 + b1a0*in1 + b2a0*in2 - a1a0*ou1 - a2a0*ou2; float const yn = ((1.0f - r*r/2.0f)) * (in0 - in1) + 2.0f * r * cos(2.0f * 3.14159f * fc/fs) * ou1 - (r*r) * ou2; // push in/out buffers in2=in1; in1=in0; ou2=ou1; ou1=yn; // return output return yn; };