Interpretation rules
If you are familiar with the web programming languages, you might have realized that this composition vs interpretation split is modelled after HTML and CSS. The composition is the information, and the interpretation is the presentation. In music, the line between those two concepts are a lot vaguer, but the basic idea holds.
Similar to CSS, the interpretation in Clavierist is defined as rules applied to certain selectors that targets selected notes (or other elements in the music). Most of the times though, this layer is abstracted away by the interface, but it’s helpful to know this when you are looking for more fine-tuned adjustments.
Interpreting a note
Select any note, and you will see two round handles show up on both ends, with another dot in the middle.
Drag the first handle, and you will change the timing of when the note starts to play.
Drag the last handle to adjust the timing of the end of the note.
Drag the dot in the middle to move both handles simultaneously.
Double click on either of the three handles to reset its value.
Multiple rules
You may define rules on different elements. Rules are prioritized by hierarchy in the following order:
Notes > Group-like elements > bars > sections > voices
When rules are defined at different levels of the hierarchy, only the most specific rule applies, without compounding.
For example, if you had set a group’s rule with width *.3
, and then set one of its child notes’ width as *.4
, the note’s final duration will be multiplied by 0.4
, not 0.3
, and also not * 0.3 * 0.4
.
If you define multiple rules on the same note, the newest rule will take precedence.
🚀 Advanced: fine-tuned interpretation rules
The moment you start dragging the handles, you will notice a new rule being added to to the interpretation rules section in the note’s property panel. The rule selects the note by its ID, with some formulas applied that reflects how you have adjusted the handles. You can find the ID of any element by selecting it. The ID will be displayed on the top right of the properties panel in a colored tag.
Note that you can manually type in formulas with basic mathematical operators, for example, if you type in *1.3
in the Width field, the note will be played 1.3x its notated duration.
To add more complicated formulas, use $
to represent the pre-transform raw value. For example, for the value 20
, providing a formula of (31 - $) * 2
will return the result 22
.
If you create a new rule for multiple notes at the same time, the selector field will have included the IDs of each of the notes. Your interpretation rule now affects all of them.
Note that if you change the selector to something that no longer matches the selected elements, the rule editor will disappear – but you can find it again in the Interpretation panel.
You can move any selectable contents to interpretations and back into the composition if you wish, for example creating additional voices. To do so, select notes and right click on them, then select an interpretation from the list in “Move to interpretation”. If it’s already in an interpretation, you can choose “Move to composition” to move it back into the main contents.
Keyframes
Keyframes are “adjustment” nodes that controls values that could change in time. Keyframes are by default kept in interpretations as their function is usually to express how music should be played or understood.
Sustain pedal
Sustain pedal markings are a type of keyframes. If you insert a sustain pedal marking with 0 width, it will either press down or release the pedal. If you insert one with a duration, for its duration it will keep the pedal down.
Speed scalars
Speed scalars (See screenshot below) are used to dynamically adjust how long a segment of music should be played.
BPM changes
Use the BPM change keyframes to adjust BPM (Beats per minute).
Key / scale changes
You can optionally mark out key / scale changes in the composition so that some features can correctly calculate scale step related operations, such as generating ornaments.