June 29, 2015
Before preparing for my university finals I had just finished a prototype for a plugin I was working on through the FX plugin book; I had just added the synth book to my collection and remember reading a small snippit about multiple stream processing (needing an array of some sort).
For the second version of my plugin, I want to split my cascaded filters of various types, say 6, into two separate audio streams, 3 and 3, then combine them together, much like having two separate EQ plugins placed on a strip in a musical DAW.
I was wondering if anyone could point me to this part of either the Synth Book, or FX book that refers to this method, as I know I read it but can not seem to find it!
January 29, 2017
There is only one "true" audio stream that moves through your process( ) function. I am guessing you want parallel branches of cascaded filters. This is 2 filters per branch:
float xn = pInputBuffer;
// split xn, cascade through two filters each
float y1 = doFilterB( doFilterA( xn ) ); // xn -> A --> B, y1 = output of B
float y2 = doFilterD( doFilterC( xn ) ); // xn -> C --> D, y2 = output of D
pOutputBuffer = 0.5*y1 + 0.5*y2;
The 0.5 coefficients when summing the branches are used to try to minimize/prevent clipping. You can set them to 1 or play with other values, but the 0.5 split is most common.
June 29, 2015
Most Users Ever Online: 36
Currently Browsing this Page:
Guest Posters: 1
Newest Members:strings4v, TheSmile, semihyavuzz, alfredLue, danioc, midnightskate3, Alia5, Shamal Sundar, Walker, Brad
Moderators: W Pirkle: 208
Administrators: Tom: 67, JD Young: 80, Will Pirkle: 0, W Pirkle: 208