hi,
I think Orm's question was not how to do the math, but how to patch things up for inplace transformation (for whatever reason...) --
assuming sounds A and B are already stored in source arrays, and there is a separate destination array, one could just mix two [until]->[counter]->[tabread <source>] outputs into a [counter]->[tabwrite <destination>]
(driven with '0, 1 <dur>'->[line]->{do the math}->:)
or (if you happen to have vex installed) send 'gen concat <A>, multiply $1, add <B>, multiply $2' to [vex_form <destination>]
(in vex case math differs slightly)
Krzysztof
marius schebella wrote:
(bufferA * n) + (bufferB * (1-n))
...
From: "Orm Finnendahl" finnendahl@folkwang-hochschule.de
...
I need to gradually transform the contents of a sample buffer from one sound to another, by crossfading all of the samples from sound A to sound B in a given time (say 2000 msecs). What I look for is an in place change of the sample values in the array. The lengths of the two