> Will Benton writes
> How can I get around this? 

You want to use an interpolated delay line structure to do
adjustable delays, you create the delay line in the ipass,
make it large enough to cover the reasonable range of delays,
and then pick the tap on the delay line that matches the
current delay you want (or, if you want the smoothest changes
in delays, do interpolation).

One way to do this is the fracdelay core opcode:

http://www.cs.berkeley.edu/~lazzaro/sa/book/opcodes/filter/index.html#frac

Although honestly, I wouldn't use it, but instead I would
build my own custom delay line opcode, and get a nicer
API than the psuedo-OO fracdelay API ... it will also be
easier to benchmark and tune the delay line structure to
run efficiently, since you'll be able to make micro changes
in the SAOL and see the result in the C code in the sa.c
file.                                      

-------------------------------------------------------------------------
John Lazzaro -- Research Specialist -- CS Division -- EECS -- UC Berkeley
lazzaro [at] cs [dot] berkeley [dot] edu     www.cs.berkeley.edu/~lazzaro
-------------------------------------------------------------------------

Reply via email to