karl,
i just implemented a lifted biorthogonal wavelet transform. it does the calculation in place, but the output needs to be permuted to be readable. to compute the permutation it is easier to have 2 separate buffers but i found an algorithm that can do it in place. i first thought this was not possible to do but it turns out to be not that difficult.
the algo:
START for k <- 1 step 1 until n do begin l <- f(k); while l < k do l <- f(l); (S[k],S[l]) <- (S[l],S[k]); end; HALT
f(k) is the permutation.
i am working on a dynamical wavetable synthesis method. the wavetable that is read out is the output of a slowly varying dynamical system. it is inspired by a recently introduced method called 'scanned synthesis'. if the system is discreet and linear you can analyse it in a state space framework. i use the wavelet transform as a special case of this setup. the wavetable then a dynamicly changing linear combination of wavelets.
tom
Tom,
I didn't answer this before because I wasn't certain, but maybe a wrong answer from me will prompt someone to correct me :) As far as I know you cannot force separate input and output buffers. This is not normally a problem, though - what are you implementing?
Karl
On Thu, 1 Mar 2001, Tom Schouten wrote:
hi,
to complete my query: is there any way to ensure that the input and output buffers of a dsp routine are different to avoid te use of an extra buffer inside the patch for algos that can't be implemented 'left to right' (i.e a permutation)?
tom
| Karl W. MacMillan | | Computer Music Department | | Peabody Institute of the Johns Hopkins University | | karlmac@peabody.jhu.edu | | www.peabody.jhu.edu/~karlmac |