If you like Artinfuser, donate at Patreon. $200 monthly will make it possible to continue maintaining Artinfuser.

Analysing counterpoint

Artinfuser Exercise can analyse your counterpoint excercises and find mistakes while you are editing them.

Artinfuser Exercise supports counterpoint excercises in the following counterpoint species in 1-9 voices:

* This combination of species with time signature is supported, but is not recommended. Species 5 is supported only in time signatures 4/4 and 2/2.

Cantus firmus can be in any voice.

There should be only one exercise in one file, with each part on a separate stave like this:

Number of voices supported: 1-9.
Counterpoint species supported: 1, 2, 3, 4, 5 (for species 5 only time signature 4/4).
Time signatures supported: 2/4, 3/4, 4/4, 2/2, 5/4 (species 1 and 3 only), 6/4, 3/2.
Modes supported: major, melodic minor, ancient modes.
Chromatic alterations supported: VI# and VII# in melodic minor only.
Chords supported: triads, 7th chords (9th and other chords are not supported).
Tuplets and notes shorter than 1/8 are not supported.
Key signature must be specified before exercise like this:


When uploading a counterpoint exercise, make sure that key is specified in the first bar and does not change later, so that Artinfuser Exercise can correctly detect it.

When uploading a counterpoint exercise, pay attention to separate parts in an exercise so that Artinfuser Exercise can differentiate between them.

The most simple and reliable way is to use a separate staff for each part. It is recommended to use this way:

Another way is to use a separate "intra-staff voice" for each part. This variant can be difficult to read when there are many parts. Also, be careful with parts crossings:

You can combine two above methods to build separate staffs, each consisting of multiple "intra-staff voices". Pay attention not to move parts between staffs:

Chords (multiple notes with same stem) should be avoided, because they can lead to different issues when exporting from notation software. Also, parts crossings cannot be represented using chords. You can use chords or combine chords with multiple staffs or "intra-staff voices" at your own risk: it is not recommended.

Vocal range detection

If you name part "Soprano", "Alto", "Tenor" or "Bass" (or "Sop.", "Alt.", "Ten.", "Bas."), Artinfuser Exercise will consider the part to be written in the specified vocal range.

If you use other part name, Artinfuser Exercise will try to detect best possible vocal range for the part.

It is recommended to name parts based on vocal ranges, because this allows algorithm to show mistakes concerning vocal ranges.