Csound Csound-dev Csound-tekno Search About

Re: sequencer

Date1999-07-27 12:28
FromMichael Gogins
SubjectRe: sequencer
The p3 issue is a real one but it is not insuperable. The solution is for
realtime score events to have p3 set negative (infinite duration) until a
note off event, at which time the topmost realtime event on the stack is
popped off and its p3 set to the total elapsed time, at which point the
instrument can trap the note off and either turn itself off, let itself be
turned off, or extend p3 to perform a controlled decay. This would indeed
enable the writing of the same instrument definitions for both realtime and
non-realtime performance, and it would remove the necessity for the MIDI
note on and note off opcodes in Csound (although they obviously should not
be removed).

-----Original Message-----
From: Paul Barton-Davis 
To: zuijlen@ibm.net 
Cc: Csound List 
Date: Monday, July 26, 1999 10:43 PM
Subject: Re: sequencer


>In message <379D1458.D8A3D4AE@ibm.net>you write:
>>The discussion between the two gentlemen seems to be about "semantics."
>>I think it is laudable if someone wants to use MIDI to control Csound.
>>I already have a sequencer that can output MIDI, so I would gladly use
>>whatever someone came up with, semantics or not.  Does a Csound score
>>have semantics or is it just a bunch of of numbers?
>
>as tobias and i have pointed out, but i feel i must repeat, the
>fundamental problem with MIDI control of Csound is the deep assumption
>in a lot of Csound opcodes that voice duration is known.
>
>this kind of assumption is at odds with the way MIDI works, since MIDI
>has no concept of duration.
>
>i know that when i sat and thought hard about how to do this in
>quasimodo, i made all voices have infinite duration. that is, a voice
>plays until its turned off, and no opcode can assume that the total
>duration of the voice is known. Removing p3 dependencies has been one
>of the trickier aspects of opcode porting to quasimodo, and it is a
>big obstacle to easy use of .orc files as quasimodules, because p3
>just doesn't exist if the instrument in question is under MIDI
>control. there are some beautiful instrument designs out there (hans,
>step forward please :), but they can't be easily adapted to real-time
>MIDI control because they use p3 in a fundamental way.
>
>so, yes, a Csound score has some semantics, because its very
>definition includes a specification of voice duration that is absent
>is a MIDI data stream.
>
>--p

Date1999-07-27 15:18
FromPaul Barton-Davis
SubjectRe: sequencer
In message <001d01bed823$365752a0$79d496c0@Realizer.ngt.sungard.com>you write:
>The p3 issue is a real one but it is not insuperable. The solution is for
>realtime score events to have p3 set negative (infinite duration) until a

zero is more desirable, since it allows duration to be represented by
an unsigned value, and thus have a larger range.

>note off event, at which time the topmost realtime event on the stack is
                                   ^^^^^^^^^^^^^^^^^^^^^^
repeating a post i sent a week or so ago, i believe this wrong. its
wrong by comparison with other synths. using the topmost event implies
LIFO semantics - most synths do FIFO. 

>popped off and its p3 set to the total elapsed time, at which point the
>instrument can trap the note off and either turn itself off, let itself be
>turned off, or extend p3 to perform a controlled decay. This would indeed
>enable the writing of the same instrument definitions for both realtime and
>non-realtime performance, 

how ? p3 is typically used to compute envelopes at i-time. it wouldn't
be available at i-time in the real-time case.

--p