What is the most efficient type of software bandpass filter? I'm writing a C++ application to extract four modulated carrier signals at four separate frequencies, from a single input signal. I've designed four FIR filters at t-filter.appspot.com but they run very slowly, even when I reduce # of taps to 80.

Is there a better option? People seem to point to biquad filters – are these different from FIR filters, and do they run more quickly in software?
Frequency domain filtering (FFT), as suggested by some comments, is definitely wrong -- it's even slower, or same speed at best! A recursive filter (IIR) is the fastes possible solution. If you choose a typical second order filter (called biquad in engineering slang) of Butterworth type and do your math right (factoring out coefficients) you only have 3 multiplications and five addition.



Edit: link to classics page: filter cookbook