[gmpi] Re: 3.9 (draft) use cases and stuff

  • From: "David Viens" <davidv@xxxxxxxxxx>
  • To: gmpi@xxxxxxxxxxxxx
  • Date: Thu, 26 Feb 2004 12:31:29 -0500

Hi

>So a locate into a loop-player is effectively a modulo operation.  Which
>means that it does not have a sequence-length to report.  Or something.

in VST, loop Players receive both the current absolute musical time since start 
of track: 
->ppqPos
and the absolute musical time that corresponds to the moment when the last bar 
started
->barStartPos

so with an easy calculation (ppqPos-barStartPos) it can find out the percentage 
of completion of the current mesure. And time itself accordingly.

barStartPos is _crucial_ since it plays an important "mesure accumulator" role 
that
take into account if there were time signature changes along the way.
(you can only do a modulo if the time sig has never changed and some apis)

Now on a related issue (which was mentioned earlier)

If the loop player interprets its audio loop as "one whole mesure of 4/4" and
receives 3/4 time sig, then its up to the audio looping code (or based on user 
choice user setting) 
to choose what to do (should NOT be enforced by GMPI imho)

1)ignore the incoming time sig thus allowing funky synch/desynch effects that 
last a certain number of mesures
   ->   three 4/4 bars =  four 3/4 bars 
(also known as "three in four" in some musician circles, then again it may be 
an invention of 
some Jazz playing friends of mine)

2)ignore the last 25% of the loop and restart right away (thats what bidule's 
looper current does)


Another example:

Sequencer 5/4, loop 4/4 loop player decides

1)similar as previous example.
2)decide to replay the first 1/4 of its 4/4 loop
3)decide to replay the end   1/4 of its 4/4 loop
4)play silence for the added lenght.

(i love this thread)

Cheers


-------------------------------------------
David Viens, Plogue Art et Technologie Inc. 
Montreal. http://www.plogue.com


----------------------------------------------------------------------
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

Other related posts: