Digital waveguide sythesis

Post any examples or modules that you want to share here
KG_is_back
Posts: 1196
Joined: Tue Oct 22, 2013 5:43 pm
Location: Slovakia

Re: Digital waveguide sythesis

Post by KG_is_back »

MegaHurtz wrote:Isnt a differentiator very close to what you get out of least squares?ie: out=in-latelate=in


No... they are totally unrelated. Least squares method is a statistic operation: Let's say we have an array(s) of input variables [x1] [x2] ... and we measured the output variable [y]. Via least squares method we can calculate a and b coeficents for equation:
y=a1*x1+a2*x2+...+b
so that the dispersion of the points form this function is minimal (that's why least squares).

in my case the equation of N-th order filter simply uses output for y value and delayed version of inputs and outputs as x values so it can calculate filter coefficients.

I can't think of a way differentiator could preform such a task...
User avatar
MegaHurtz
Posts: 105
Joined: Mon Aug 11, 2008 6:29 pm
Location: Eindhoven/Nederland

Re: Digital waveguide sythesis

Post by MegaHurtz »

Ahah, didnt know it actually jielded the coordinates. So it run by iir? Thought it did some kind of smoothing thingy on finite data sets. Like I sayd before, least squares is totally wasted on me.

On another note though, there is a lot of info imprinted in the impulse. Maybe not the total but a good part of the frequency response as well.
192k @ 8ms
KG_is_back
Posts: 1196
Joined: Tue Oct 22, 2013 5:43 pm
Location: Slovakia

Re: Digital waveguide sythesis

Post by KG_is_back »

MegaHurtz wrote:So it run by iir?

Yes, the coefficients are for IIR. I've tired FIR but the high frequency response was very unstable.
MegaHurtz wrote:On another note though, there is a lot of info imprinted in the impulse. Maybe not the total but a good part of the frequency response as well.

Yes, the impulse contains th sound of the pick convoluted with impulse response of instrument body, room, mic etc.
It is commutative synthesis - relies on fact that string and other parts of the chain do not introduce any distortion.
The distortion can be simulated in the string model IIR filter. led's say we distort input by x^2 and output by sqrt(y) the actual wave in the loop will be distorted but it will be undistorted before the filter and re-distorted after it. This is very easy to implement actually - simply add new input variables to filter estimator.
the equation for the filter will look like:
y=b0*x0 + b1*x1 +... a1*y1 + a2*y2 + ... c0*sqrt(x0) +...d1*sqrt(y1) ... e0*(x0^2) + ...f1*(y1^2) + ...
User avatar
MegaHurtz
Posts: 105
Joined: Mon Aug 11, 2008 6:29 pm
Location: Eindhoven/Nederland

Re: Digital waveguide sythesis

Post by MegaHurtz »

Cool man, would like to see the finished product.
192k @ 8ms
KG_is_back
Posts: 1196
Joined: Tue Oct 22, 2013 5:43 pm
Location: Slovakia

Re: Digital waveguide sythesis

Post by KG_is_back »

I have implemented the two dimensional model - it solves the too short decay problem. It uses first model for the attack part and that one bleeds to second model (captured from middle/end of the file) which adds sustain after initial attack. There will probably have to be third filter for the bleeding part... I do yet not know how to capture it.

Also I've added gui so it should be relatively easy to use now.
KG_is_back
Posts: 1196
Joined: Tue Oct 22, 2013 5:43 pm
Location: Slovakia

Re: Digital waveguide sythesis

Post by KG_is_back »

New update in the first post... added save feature and simple example waveguide synthetizer that can load the saved models.
Post Reply