Re: Help/advice on RME cards and Linux ALSA

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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

[Index of Archives]     [ALSA Devel]     [Linux Audio Users]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]

  Powered by Linux