|
From: Juhana S. <ko...@ni...> - 2004-06-16 13:25:24
|
Hello.
A quick feature check for Linuxsampler.
I started writing a simple grab&drag multitrack audio sequencer.
I would need an audio engine which can do the following:
(1) can play long wav files directly from disk, no looping needed;
(2) each wav file would be shaped with a pre-defined amplitude
envelope having arbitrary number (e.g., large enough)
of points, possibly with linear and exp decay shapes;
(4) can also read the whole sequence in advance.
I already started writing my own simple disk sampler to which
I first feed the sequence data such as
2.000000 l01
2.000000 l02
5.556244 p17
5.851303 v11
<time> <wavfile id> (id could be a number for speed)
Then I set the engine clock to 0.0 and playing can be started.
(Nobody actually forbids sending seq data during the play.)
The amp envelope would be sent to the engine from the sequencer.
The envelope is not part of the wav file, but a part of the sequencer.
I'm still wondering what would be best solution to the following
feature: the multitrack editor has both the amp envelope for the
wav files and the envelope for the whole track. I could premultiply
the amplitude gains together and feed only the wav file envelope to
the engine, but that does not work well if I use lin/exp or exp/exp
types of envelopes. Could Linuxsampler support multiple envelopes?
(I could approximate exp envelopes with linear envelopes and then
precompute the produced linear envelope, though.)
Juhana
|