| Hi all,
My friend and composer Christopher Bailey has used a technique he and a
friend call 'boulder' synthesis: instead of looping a sampleduring a
sustain portion of an envelope, where one can here the artificiality of
looping points, etc. implement an 'engine' which does everything else a
sample engine does, except that instead of looping to sustain a note, one
uses randomized, cross-faded segments of the original sample. This adds a
more life-like organic realism to a sustained tone when using samples. The
'boulder' idea is that this is sort of a larger scale analog to granular
synthesis. i have been most impressed with the results he has illustrated
to me. (In fact, I'm amazed that this idea isn't already more widespread,
even in commercial hardware)
My question--I have an broadly-outlined idea of how to implement this in
CSound (Chris does it in CMIX) with the diskin opcode, some F-tables to
match MIDI notes with samples, etc., but might it not be more beneficial
in the long run to implement this as an opcode, especially if it could be
built on modifying some existing codebase? Perhaps one could import
soundfonts, and do everything that the fluidsynth code does, except change
the looping procedure for sustain parts of the envelope to the above
described procedure instead.
How easy would this be? I can imagine it would really be a neat addition
to the CSound arsenal, especially for sample-loving folk. The opcode might
be called 'fluidboulder', and maybe for non-soundfont based sample work,
instead of 'loscil' we could have 'boulderoscil' :)
Best,
AKJ.
|