[LAD] Leslie and convolution

Gene Heskett gheskett at wdtv.com
Thu Jul 26 21:07:43 UTC 2012


On Thursday 26 July 2012 16:59:53 Gene Heskett did opine:

> On Thursday 26 July 2012 13:37:45 Julien Claassen did opine:
> > Hello again!
> > 
> >    So the very short answer would be: It's not been done inany Linux
> > 
> > software yet.
> > 
> >    Thanks for the explanations. I have thought a little too simple it
> > 
> > seems and the outcome is what I originally expected. No go. :-)
> > 
> >    Kindly yours
> >    
> >            Julien
> 
> Speaking as a bit of an engineer, to do a Leslie simulation would
> require that something like a bucket brigade be done with the digital
> data once decoded, then setup a pair of taps that would sample the
> digital from the brigade , advancing the signal in time for the speaker
> nearest the listener, and delaying the other half of the mix equally.
> Then combine it, and send it on down the path to the speakers, or
> perhaps to 2 separate speakers, but the 2 speaker approach would add
> its own artifacts.  What you are then building is in essence similar to
> a comb filter with a variable clock speed.
> 
> And this effect would only be valid for a stationary listener, because
> the bucket-brigade would have to get longer for the angle being
> synthesized according to where the listener is.  The farther off the
> centerline, the longer the brigade, up to the time lag representing the
> maximum separation of the actual speakers on the Leslies rotating
> board.  I'm sure some curious coder could work out the math, but the
> bucket-brigade would probably have to be done in hardware.  Such IC's
> are (or were a decade ago) available.
> 
> Cheers, Gene

I forgot to mention that the tap location up and down the bucket brigade 
would have to be cycled from zero to the max separation at 2x the Leslies 
speaker rpms in a sin wave pattern.  This could be done by keeping the sign 
of the sine and shifting the channels so they would crossover in time with 
the sin being driven with the Leslies normal rpm, the crossover of course 
occurring when the speakers are directly over each other.

It might be a fun exercise to code if our modern cpus are fast enough to do 
the bucket brigade in memory at the sample frequency, for the whole brigade 
needed.  A decent approximation might be done with 8 buckets, but I'd think 
16 or 32 deep would be more accurate for the golden eared, which sadly no 
longer includes me.

Cheers, Gene
-- 
"There are four boxes to be used in defense of liberty:
 soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author)
My web page: <http://coyoteden.dyndns-free.com:85/gene> is up!
"I'd love to go out with you, but I never go out on days that end in `Y.'"



More information about the Linux-audio-dev mailing list