On Sat, 27 Jan 2007 14:58:32 -0800 (PST) Bill Unruh <unruh@xxxxxxxxxxxxxx> wrote: > On Sun, 28 Jan 2007, Sergei Steshenko wrote: > > > 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. > > No. No human ear can detect 1 Hz-- 20 Hz is the minimum, but will accept > your point that the an analog equaliser at low frequencies can start > messing with the timing of the low frequency signals. This has nothing to > do with latency, or with locality, and it has nothing to do with digital > processing. > > I said "observe", not "hear". I am saying that to roughly estimate that a signal contains a 1Hz spectral component one has to observe it (with his/her eyes, or scope, supersensitive to infra low frequencies ears) for at least one second. > > Have you ever conducted laboratory work on how signals propagate > > through oscillating loops ? > > Sure. It is a standard undergraduate experiment. > > > > > Have you observed the delay in envelopes ? > > The "delay" occurs at the edges of the bandpass (for a bandpass filter)-- > ie places wheer the phase of the filter changes rapidly. So what you would > really like are low phase shift filter designs. The delay also occurs in band pass filters (oscillating loops) which by construction are HPF + LPF, and the bigger the Q factor is, the bigger the delay is. > > > > > Do you agree at all agree that we can have good resolution either > > in frequency or in time domain, but not both ? > > ?? No idea what this has to do with the question at hand. > He wants a filter design to alter the frequency response at the ultra low > bass frequencies. Why he would want that I have no idea. But, assuming he > can do this with an analog equaliser board, he can also do it with a > digital one, with minimal extra latency. Whether he really wants to do that or > whether it is a good idea I have no comments on. To be able to arbitrarily form response at low frequencies Ronan needs narrow band bandpass filters, i.e. for, say, 10Hz with 1Hz -3db level Ronan needs a BPF with Q factor 10, which will have group delay of about 1 second (roughly), which is as bad (at these frequencies) as 1 second latency. > > > > > > > > > Regards, > > Sergei. > > > > > 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