Synthesia uses a simple markup system to store finger hints alongside a music file.
Here is an informal description of the grammar:
- Whitespace and other characters not used below are ignored and can be used anywhere.
- The numbers 1-5 used anywhere outside the context of a track or measure command means the "next" note is left-hand, finger 1-5. Here "next" refers specifically to the physical ordering of note events in each track of the original music file.
- Similarly, 6-9 and 0 means right-hand, finger 1-5 respectively. (So 6 is finger R1, 9 is finger R4, and 0 is finger R5.)
-to skip a note.
132-43would apply 5 labels to 6 notes where the 4th note had no label.
- You can indicate finger substitution with
1s2would apply two labels to the same note, indicating that note should begin with your left thumb but transition to your left index finger. There is no limit on the number of substitutions (
1s2s3s4s5might be found in a finger exercise).
- Jump to assigning finger hints to notes in a different track with
tN:where N is an integer. So
t14:123would add 3 labels to track 14. (Tracks are zero-based.)
mN:to jump to a different measure in the current track. Measures are ones-based.
t2: 123-4 m7: 789will add seven labels to track 2. Four of those would be in the first (and second, if it spills over) measure. The remaining three labels would be added to notes in the 7th measure.
The default track and measure (when left unspecified) are 0 and 1 respectively. Measure is reset to 1 after a track instruction.
Everything for the same song goes in one string. This is perfectly valid:
t1:12s348t2:325m9:974, but whitespace is encouraged. This expresses the same hints while being easier to read:
t1: 12s348 t2: 325 m9:974
Here are finger hints from Sevivon, Sov, Sov, Sov, from G Major Music Theory.
t1: 6 m3: 0 m4: 8 m5: 6 m7: 60 m9: 8--0908 m11: 8--86 m13: 8--0908 m15: 8--8 t2: 3121 m5: 3 m6: -121 m8: 53 m9: 13131321321313132