All of these problems (what is the modulus of time?) are obviated by having time as absolute seconds from start of performance, double-precision floating-point. There are no particular performance problems with that. If there is a problem with rounding errors in converting to/from musical units, then absolute sample frame from start of performance should be used. For musical time, bar/beat/tick makes sense. What about also having first and second derivatives of tempo? (by tick). The host should also maintain, in an efficiently queried format, such quantities as seconds per sample frame, seconds per tick, and so on. =========================================== Michael Gogins gogins at pipeline period com Irreducible Productions Silence, a language for programming music and sound Available at http://www.csounds.com =========================================== ----- Original Message ----- From: "Mike Berry" <mberry@xxxxxxxxx> To: <gmpi@xxxxxxxxxxxxx> Sent: Wednesday, April 30, 2003 4:14 PM Subject: [gmpi] Re: Topic 6: Time representation > Samples/sec is simply not accurate enough. I know this sounds strange > in an audio plugin API, but I want to be able as a host writer to set > the time representation that I think is necessary for my app. In the > case of a video editor, I need a tick resolution whihc is lined up with > my video rate AND my audio rate. > > So I consider it a necessity that the host be able to specify the ticks > per second. Some hosts might use a sampel rate for this. But not all. > > Tim Hockin wrote: > >> Please do not specify that the clock is in the audio sample rate. Leave > >>it up to the host to specify to the plugin what the ticks per second is. > >>This value would be retrieved by the plugin at startup, and would be > >>guaranteed never to change during runtime. The plugin would then be in > >>charge of turning ticks in the host's resolution into samples or beats > >>or whatever they needed internally. > > > > > > If ticks is always related to samples by a constant factor, and everything > > must convert between the two ehy not just represent timestamps as samples > > and be done with it. > > > > In my discussion, I always meant ticks in relation to musical time, which is > > to say - NOT related to sample time in any direct way. > > > > I think we all agree that some constant, monotonic, absolute value is the > > fundamental timestamp. Samples are used everywhere, and the host already > > provides knowledge of samples/sec. > > > > More from me as I work through the list of messages to which I must respond. > > > > ---------------------------------------------------------------------- > > 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 > > > > > > > -- > Mike Berry > Adobe Systems > > > ---------------------------------------------------------------------- > 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