|
Hello all,
I am a CSound newbie, studying with Dr. Boulanger at Berklee for a little
over a month. Now that we have gone through his six Etudes and gotten a
crash course in the syntax of CSound, I suggested that the advance statement
may need some updating and he found the suggestion valid enough to be posted
on the mailing list for someone else to try to pick up in a new version.
Given the use of sections in a note list, advance statements (especially in
the beginning of a note list, when you're just trying to locate and demo out
a specific section) become really archaic and illogical since they only make
use of universal seconds going by in a piece, a number to which nothing else
is held accountable other than the advance statement. The start and dur
p-fields of individual sections tell you where things are fired off within
the section itself, and you string sections consecutively, but the start
p-field resets itself to zero every time you add a new section and, and the
time going by in advance statements does not.
I don't know, this makes advance statements really difficult to work with
for me, since I have to do a bunch of dart-throwing at my approximate place
within the piece by just adding up the total numbers of start times at the
end of sections to get to where I want to be.
If I could suggest a few ideas, maybe the advance statement's syntax could
be expanded to acknowledge universal time that has gone by in the piece (as
it currently does) as well as what number section you're on (since that gets
displayed in the output console, though it is not delineated in the note
list) and where you are within the "time" of that section, possibly allowing
you to zero-out the original universal statement?
Or some kind of parallel advance section statement paired with an
intercalary advance statement within the section?
Or maybe the expansion of default p-fields to optionally include universal
time scale outside of within-section time?
Something like that.
-Nick |