(probly driving Tim wild...) > This is actually a big issue in music representation. The note on-note off > paradigm is ambiguous, unless each note on event gets an instance tag and is > tied to a specific note off event. If we can do that, fine. Agree totally. Instance-tag (I call it voice-ID) is a good solution. Notes can be any pitch, multiple notes can have the same pitch, and notes can change pitch 'continuously' under control of the score or performer. Best Regards, Jeff ----- Original Message ----- From: "Michael Gogins" <gogins@xxxxxxxxxxxx> To: <gmpi@xxxxxxxxxxxxx> Sent: Tuesday, November 18, 2003 2:57 PM Subject: [gmpi] Re: GIMPI-MIDI > Thanks for your attention to this topic. > > This is actually a big issue in music representation. The note on-note off > paradigm is ambiguous, unless each note on event gets an instance tag and is > tied to a specific note off event. If we can do that, fine. > > If not, then when several note on events are issued for the same pitch and > instrument, there is no way to tell which note on event an incoming note off > event belongs to, so you have to make some sort of assumption, like first on > is first off. For some kinds of music this is no big deal, for other kinds > of music it's a killer (think Steve Reich, Six Pianos). > > I agree that the plugin writer should only have one format to worry about; > what I would suggest, then, is the duration format, with it being understood > that in real time performance, duration is -1 until a note is released (MIDI > note off somewhere, probably) in which case the duration is reset to the > length of the decay tails, and the envelope generators in the instrument > jump to their release segment. > > ============================================ > Michael Gogins > gogins at pipeline period com > Irreducible Productions > CsoundVST, an extended version of Csound for programming music and sound > Available at http://sourceforge.net/projects/csound/ > ============================================ > > > ----- Original Message ----- > From: "Jeff McClintock" <jeffmcc@xxxxxxxxxx> > To: <gmpi@xxxxxxxxxxxxx> > Sent: Monday, November 17, 2003 8:43 PM > Subject: [gmpi] Re: GIMPI-MIDI > > > > Hi Michael, > > > > Supporting score-driven music is important, but perhaps it's easier to use > a > > small 'wrapper' to perform the conversion. > > > > i.e. > > CSound-style MIDI > > Style > > [Start-time + Duration] ---->[Converter]------>[Note-on],[Note-off] > > > > The code would be trivial, but would save plugin writters from supporting > > two different standards. > > > > I guess my main objection to sending an instrument a 'note-duration', is > > that it has to store it somewhere, plus it has to understand musical-time, > > and track tempo changes etc, quite a lot to implement in every instrument. > > > > Best Regards, > > Jeff > > > > ----- Original Message ----- > > From: "Michael Gogins" <gogins@xxxxxxxxxxxx> > > To: <gmpi@xxxxxxxxxxxxx> > > Sent: Tuesday, November 18, 2003 2:03 PM > > Subject: [gmpi] Re: GIMPI-MIDI > > > > > > > The duration field could be -1 to indicate an indefinite duration; upon > > the > > > release of the note instance, the instrument might reset the duration to > > > allow for a decay tail. The advantage of this scheme is that both > > real-time > > > and score-driven performance can be carried out by the same event schema > > and > > > the same instrument code. Although the purview of GMPI is real-time > > > performance, there is no reason not to support score-driven (or > off-line) > > > performance if that can be done without complicating the specification, > > and > > > I am sure that it can be done. This would enable GMPI to encompass > > > event-transforming instruments of greater sophistication but less > > complexity > > > than having to maintain a note on-note off pair for each note. As you > > know, > > > a number of sequencers represent notes internally this way and must > > > translate them to pairs to drive instrument plugins. > > > > > > Yes, .3 would be the instance tag in your example. > > > > > > > > > ============================================ > > > Michael Gogins > > > gogins at pipeline period com > > > Irreducible Productions > > > CsoundVST, an extended version of Csound for programming music and sound > > > Available at http://sourceforge.net/projects/csound/ > > > ============================================ > > > > > > > > > ----- Original Message ----- > > > From: "Marc Poirier" <fipnid@xxxxxxxxx> > > > To: <gmpi@xxxxxxxxxxxxx> > > > Sent: Sunday, November 16, 2003 10:16 PM > > > Subject: [gmpi] Re: GIMPI-MIDI > > > > > > > > > > --- Michael Gogins wrote: > > > > > I do not agree that separating note number and pitch is a good idea. > > > > > > > > Why not? > > > > > > > > > I do agree that providing an ability to repitch a note during > > > > > performance is good, even vital. > > > > > > > > > > Csound allows a note to carry a tag. Subsequent note on messages > with > > > > > the same tag do not re-initialize the note, but carry new > information > > > > > about ANY parameter to the instrument synthesizing that note. It > could > > > > > be pitch bend, volume, filter cutoff, whatever. > > > > > > > > > > So I propose: > > > > > > > > > > [time][duration][status][channel][key][velocity][userdefined]... > > > > > > > > Specifying duration of course isn't possible in a realtime live > > > > performance context, though. > > > > > > > > > If the status field has a fractional part, the fraction acts as an > > > > > instance tag and the event is routed to the instrument instance that > > > > > first received a note on message with that tag. > > > > > > > > I didn't follow that. Could you rephrase? What exactly do you mean > by > > > > "instance tag" in this context? And you mean that, if status is for > > > > example 6.3, then 0.3 is the "instance tag"? I think that I'm not > > really > > > > getting what you mean... > > > > > > > > Marc > > > > > > > > __________________________________ > > > > Do you Yahoo!? > > > > Protect your identity with Yahoo! Mail AddressGuard > > > > http://antispam.yahoo.com/whatsnewfree > > > > > > > > ---------------------------------------------------------------------- > > > > Generalized Music Plugin Interface (GMPI) public discussion list > > > > Participation in this list is contingent upon your abiding by the > > > > following rules: Please stay on topic. You are responsible for your > > own > > > > words. Please respect your fellow subscribers. Please do not > > > > redistribute anyone else's words without their permission. > > > > > > > > Archive: //www.freelists.org/archives/gmpi > > > > Email gmpi-request@xxxxxxxxxxxxx w/ subject "unsubscribe" to > unsubscribe > > > > > > > > > > > > > ---------------------------------------------------------------------- > > > Generalized Music Plugin Interface (GMPI) public discussion list > > > Participation in this list is contingent upon your abiding by the > > > following rules: Please stay on topic. You are responsible for your > own > > > words. Please respect your fellow subscribers. Please do not > > > redistribute anyone else's words without their permission. > > > > > > Archive: //www.freelists.org/archives/gmpi > > > Email gmpi-request@xxxxxxxxxxxxx w/ subject "unsubscribe" to unsubscribe > > > > > > > > > > > > ---------------------------------------------------------------------- > > Generalized Music Plugin Interface (GMPI) public discussion list > > Participation in this list is contingent upon your abiding by the > > following rules: Please stay on topic. You are responsible for your own > > words. Please respect your fellow subscribers. Please do not > > redistribute anyone else's words without their permission. > > > > Archive: //www.freelists.org/archives/gmpi > > Email gmpi-request@xxxxxxxxxxxxx w/ subject "unsubscribe" to unsubscribe > > > > > ---------------------------------------------------------------------- > Generalized Music Plugin Interface (GMPI) public discussion list > Participation in this list is contingent upon your abiding by the > following rules: Please stay on topic. You are responsible for your own > words. Please respect your fellow subscribers. Please do not > redistribute anyone else's words without their permission. > > Archive: //www.freelists.org/archives/gmpi > Email gmpi-request@xxxxxxxxxxxxx w/ subject "unsubscribe" to unsubscribe > > > ---------------------------------------------------------------------- Generalized Music Plugin Interface (GMPI) public discussion list Participation in this list is contingent upon your abiding by the following rules: Please stay on topic. You are responsible for your own words. Please respect your fellow subscribers. Please do not redistribute anyone else's words without their permission. Archive: //www.freelists.org/archives/gmpi Email gmpi-request@xxxxxxxxxxxxx w/ subject "unsubscribe" to unsubscribe