On Sat, 27 Jan 2007 12:45:06 -0800 (PST) Bill Unruh <unruh@xxxxxxxxxxxxxx> wrote: > On Sat, 27 Jan 2007, Sergei Steshenko wrote: > > > On Sat, 27 Jan 2007 10:32:30 -0800 > > "ronan mcallister" <bass.woofer@xxxxxxxxx> wrote: > > > >> Sergei, > >> > >> For the moment forgetting about the Xover's, how would I use ecasound or > >> another tool to implement an arbitrary EQ function with sliders / user > >> controls? I've got JACK now running better (mainly a problem related to > >> configuration) and I'd like to have maybe a dozen or more bands of very LF > >> EQ (eg, fc: 5hz, 8hz, 12hz,.... 100hz) for subsonic equalization. > >> > >> So far it appears brutefir can do this but sans a GUI? What plugin would I > >> need and is it extensible? > >> > >> should I start a new topic to discuss the IIR based EQ you hinted about? > >> > >> Thank you very much, > >> Ronan > >> > >> > > > > Yes, please start a new topic about IIR vs FIR, but, anyway, if you > > want low latencies AND equalization at 5hz, 8hz, 12hz, forget about > > it - it's impossible physically/mathematically - regardless of OS > > and sound system, and regardless of digital/analog. > > > > I.e, you can either have > > > > low (latency/group delay) AND equalization only at high frequencies > > What? What are you trying to say here? Most equalizers are just > realisations of second order differential equations ( or fourth order) that > is why analog systems can create them. The behaviour at the next instant of > time depends only on the values of certain variables at this instant of > time. That is local and is locally simulatable digitally. There is no need > to wait for many periods of the signal. > > Thus if o_i is the ith output and f_i is the ith input > > o_i+1= ((1-a)o_i -2afi)/(1+a) > is a low pass single pole filter with the low passband frequency determined > by a. > Even a 12 pole filter can be done using only 13 immediate frequencies. and > you do not need to wait, you just save the last 12 in a buffer. Ie, this > filter has as latency only the time required to actually carry out the > calculation. > > You certainly would not impliment this by doing a Fourier transform. > Just as the analog filter does not do it by instituting a fourier > transform-- it impliments the filter by storing information in the charge > on capacitors, or currents in inductors and the next value of the output > depends only on the immediate values of those few variables. > > Now if your purpose is to do frequency shifting or resampling that is far > more difficult, because there things really are non-local in time. > > > > > > OR > > > > big (latency/group delay) AND equalization also at low frequencies. > > Or low latency and equalisation at low frequencies. > > > > > Regards, > > Sergei. > > > > > Bill, think of: 1) relationship between Q factor of on oscillating loop and its ability to react to quickly changing envelope; 2) (non-equal for different frequencies in IIR/analog equalizer) group delay; 3) possible pulse smudging in case of non-equal group delay. If Ronan opens the new thread, we'll discuss it all there. Regards, Sergei. -- Visit my http://appsfromscratch.berlios.de/ open source project. ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ Alsa-user mailing list Alsa-user@xxxxxxxxxxxxxxxxxxxxx https://lists.sourceforge.net/lists/listinfo/alsa-user