Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void lowpass_biquad_filter(int32_t inL, int32_t inR, uint8_t filter_index, uint8_t type, float centerFreq, float Q, float BW, float S)
- {
- inBufL[filter_index][0] =(float)((float)inL / 32767);
- inBufR[filter_index][0] =(float)((float)inR / 32767);
- outputL[filter_index] = (lowpass_b0/lowpass_a0) * inBufL[filter_index][0] +
- (lowpass_b1/lowpass_a0) * inBufL[filter_index][1] +
- (lowpass_b2/lowpass_a0) * inBufL[filter_index][2] -
- (lowpass_a1/lowpass_a0) * outBufL[filter_index][1] -
- (lowpass_a2/lowpass_a0) * outBufL[filter_index][2];
- outBufL[filter_index][2] = outBufL[filter_index][1];
- outBufL[filter_index][1] = outputL[filter_index];
- inBufL[filter_index][2] = inBufL[filter_index][1];
- inBufL[filter_index][1] = inBufL[filter_index][0];
- outputR[filter_index] = (lowpass_b0/lowpass_a0) * inBufR[filter_index][0] +
- (lowpass_b1/lowpass_a0) * inBufR[filter_index][1] +
- (lowpass_b2/lowpass_a0) * inBufR[filter_index][2] -
- (lowpass_a1/lowpass_a0) * outBufR[filter_index][1] -
- (lowpass_a2/lowpass_a0) * outBufR[filter_index][2];
- outBufR[filter_index][2] = outBufR[filter_index][1];
- outBufR[filter_index][1] = outputR[filter_index];
- inBufR[filter_index][2] = inBufR[filter_index][1];
- inBufR[filter_index][1] = inBufR[filter_index][0];
- outbuffer_1[0] = (int32_t)(outputL[filter_index] * preset[active_file].lowpass_gain_knob*1000);
- outbuffer_1[1] = (int32_t)(outputR[filter_index] * preset[active_file].lowpass_gain_knob*1000);
- }
- void highpass_biquad_filter(int32_t inL, int32_t inR, uint8_t filter_index, uint8_t type, float centerFreq, float Q, float BW, float S)
- {
- inBufL[filter_index][0] =(float)((float)inL / 32767);
- inBufR[filter_index][0] =(float)((float)inR / 32767);
- outputL[filter_index] = (highpass_b0/highpass_a0) * inBufL[filter_index][0] +
- (highpass_b1/highpass_a0) * inBufL[filter_index][1] +
- (highpass_b2/highpass_a0) * inBufL[filter_index][2] -
- (highpass_a1/highpass_a0) * outBufL[filter_index][1] -
- (highpass_a2/highpass_a0) * outBufL[filter_index][2];
- outBufL[filter_index][2] = outBufL[filter_index][1];
- outBufL[filter_index][1] = outputL[filter_index];
- inBufL[filter_index][2] = inBufL[filter_index][1];
- inBufL[filter_index][1] = inBufL[filter_index][0];
- outputR[filter_index] = (highpass_b0/highpass_a0) * inBufR[filter_index][0] +
- (highpass_b1/highpass_a0) * inBufR[filter_index][1] +
- (highpass_b2/highpass_a0) * inBufR[filter_index][2] -
- (highpass_a1/highpass_a0) * outBufR[filter_index][1] -
- (highpass_a2/highpass_a0) * outBufR[filter_index][2];
- outBufR[filter_index][2] = outBufR[filter_index][1];
- outBufR[filter_index][1] = outputR[filter_index];
- inBufR[filter_index][2] = inBufR[filter_index][1];
- inBufR[filter_index][1] = inBufR[filter_index][0];
- outbuffer_1[0] = (int32_t)(outputL[filter_index] * preset[active_file].highpass_gain_knob*1000);
- outbuffer_1[1] = (int32_t)(outputR[filter_index] * preset[active_file].highpass_gain_knob*1000);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement