On Sat, 27 Jan 2007 14:23:19 -0800 (PST) Bill Unruh <unruh@xxxxxxxxxxxxxx> wrote: > On Sat, 27 Jan 2007, Sergei Steshenko wrote: > > > 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; > > It does not matter. The response of the loop is completely local in time. > The next instant's voltage output of the oscillator is simply determined by > the charge on the capacitor and the current through the > inductor/resistor. This purely local intereaction is what gives the system > its memory. Otherwise analog filters would not work either-- suffereing > from huge latencies. > > > > > 2) (non-equal for different frequencies in IIR/analog equalizer) > > group delay; > > Again, it does not matter. > These all arise purely from the local in time equations of motion, which > can be modeled by purely local equations for the digital stream (ie > depending only on a few buffer values which are updated at each time step , and the input value > now. > > > > > 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. > > > > > You may tell me is much as you can it doesn't matter. I did build an IIR bands per octave high Q (1/6 of octave can be suppressed by 30db) equalizer, and it works, just the difference in group delay is so big that drums + percussions don't sound naturally - the low frequency component comes much later than the high frequency one. Bill, again, have a look at Q <-> F <-> group delay <-> what we, humans, hear. Think of the whole thing differently - who what smallest time you have to observe a signal to understand that it has a 1Hz component ? The answer is 1 second. Have you ever conducted laboratory work on how signals propagate through oscillating loops ? Have you observed the delay in envelopes ? Do you agree at all agree that we can have good resolution either in frequency or in time domain, but not both ? 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