JMSL Tutorial: JScore's Transcriber, part 2
Customizing the transcriber

A BeatDivisionScheme is a description of how to subdivide one beat of a measure. A list of BeatDivisionSchemes are used by the Transcriber to quantize musical events that happen somewhere in time. The user can specify which BeatDivisionSchemes the Transcriber may consider by adding them to this BeatDivisionSchemeList.

The following code specifies a BeatDivisionScheme that describes an eighth note triplet. Here, at least two of the triplet must be present in a beat for the triplet to be considered:
// 8th note triplet
BeatDivisionScheme b = new BeatDivisionScheme();
b.setTimeSpan(1);	// covers a quarter note time span
b.setMinTimeSpan(b.getTimeSpan());
b.setMinRequired(2);	// do not need all three present to be considered a triplet
b.setNumberOfDivisions(3);
BeatDivisionSchemeList.addBeatDivisionScheme(b);	// add to list of schemes


IMPORTANT: You do not have to set all these up yourself. BeatDivisionSchemeList has a method which sets it up with reasonable default values:

BeatDivisionSchemeList.defaultSetup();
Previous Tutorial Index Tutorial Contents Next

 
  (C) 2000 Nick Didkovsky and Phil Burk, All Rights Reserved
  JMSL is based upon HMSL (C) Phil Burk, Larry Polansky and David Rosenboom.