[chuck-users] Interesting stereo widening effect

Kassen signal.automatique at gmail.com
Thu May 29 15:40:48 EDT 2008

2008/5/29 Rich Caloggero <rjc at mit.edu>:

> So I take it that 100 us
> is 100 microseconds (the suggested delay for speakers placed 3 meters
> apart)?

Yes, μs = microsecond == .001::ms

I don't feel like doing math on the speed of sound right now but I do think
that I keep hearing that with this technique you are supposed to keep the
speakers close together and at 60° or something pointing outwards.

> Sampling rate is aprox. 40k so 1 sample every 250 microseconds?

I think you are off;
<<<(samp / ms) * 1000>>>;

gets me 22.675737. Unless I'm confused (again!) that means 22.7 microseconds
per sample.

>   So from what your saying, this means you'd need to interpelate 250 times
> per sample?

I think it's more like 23 but yes. You'd have to do that in the case that
you'd have a interpolating delay Ugen with feedback built in, something I
don't think we have.

I'd put a few in series without feedback to get around this as you're likely
using a amount of feedback that makes a impulse drop below the noise floor
of your listening environment after a few iterations anyway.

>   Now that I think about it (outch this math stuff makes my brain hurt),
> what does it even mean to hae a delay smaller than the time between samples?

Well, obviously there is nothing "between" digital values... but the values
represent a continuous wave so we can interpolate in the hope of figuring
out what the value between two samples would be if it were there.

Let's say we are a delay line and right now we are getting a value of .2 at
our input and we know that a sample ago it was .1 ok? Assuming linear
interpolation (for convenience sake) we could then say that half a sample
ago we had a input of .15 We never actually saw that input, of cource, but
we could still output .15 and pretend we got this half a sample ago as our
unput. We'd still be able to calculate one such value every time the VM
"ticked" us which is once per sample. I don't really see any big problem
here, it's not harder then a delay of length 100000.5 samples and nobody
frowns at those, I think.

If we'd be expected to do feedback we'd have a problem because that would
mean multiple passes to calculate a single sample.... Which is why I'd lean
towards faking it and putting a few delaylines in series.

I hope that helps. Actually I hope it was correct at all; I'm no certified
DSP guru...

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cs.princeton.edu/pipermail/chuck-users/attachments/20080529/aaec0ef6/attachment-0001.html>

More information about the chuck-users mailing list