Voice-Leading Motion Classifier

Classify two observed voice movements by signed interval/direction, preserving static/oblique/similar/parallel and strict crossing; no counterpoint legality or voice identity inference.

Description

Two-voice motion distinguishes direction from interval size.

Two-voice motion distinguishes direction from interval size. Crossing requires reversal of the voices’ relative pitch order.1

Enter exactly two integer MIDI notes 0–127 per voice, ordered before/after. Classify static, oblique, contrary, parallel or similar motion and return strict crossing flag.

When to use Voice-Leading Motion Classifier

Use Voice-Leading Motion Classifier when you need to evaluate the supplied records under the calculation and evidence rules below. Meeting at the same pitch is not strict crossing. No contrapuntal legality, spelling or phrase context is inferred.

Enter the written notes, explicit grouping, pitch observations or supported chord tokens requested. Keep scientific octaves, accidentals and caller evidence consistent.

How to use Voice-Leading Motion Classifier and understand its results

  1. Enter the written notes, explicit grouping, pitch observations or supported chord tokens requested. Keep scientific octaves, accidentals and caller evidence consistent.
  2. Enter firstVoiceMidiPair, secondVoiceMidiPair using the field table and calculation rules, then run the tool.
  3. Read twoVoiceMotionClass, firstVoiceSignedMotion, secondVoiceSignedMotion, voiceCrossingObserved. The explanation below defines the units, signs, ordering and any flags or placeholder values.
  4. If the tool reports an input issue, correct the values and run it again. Apply the stated assumptions when interpreting a successfully returned result.
Input fieldMeaningValue type; see rules belowRequirement
firstVoiceMidiPairFirst voice midi pairlist of numberRequired
secondVoiceMidiPairSecond voice midi pairlist of numberRequired

Enter exactly two integer MIDI notes 0–127 per voice, ordered before/after. Classify static, oblique, contrary, parallel or similar motion and return strict crossing flag.

parallel: nonzero equal signed movements; crossing: beforeDifference×afterDifference<0

Units, indexing, boundary conditions and exceptional cases are defined in the calculation rules above.

Output fieldMeaningValue type
twoVoiceMotionClassTwo voice motion classstring
firstVoiceSignedMotionFirst voice signed motionnumber
secondVoiceSignedMotionSecond voice signed motionnumber
voiceCrossingObservedVoice crossing observedboolean
json
{
  "input": {
    "firstVoiceMidiPair": [
      60,
      62
    ],
    "secondVoiceMidiPair": [
      67,
      69
    ]
  },
  "output": {
    "twoVoiceMotionClass": "parallel",
    "firstVoiceSignedMotion": 2,
    "secondVoiceSignedMotion": 2,
    "voiceCrossingObserved": false
  }
}

Limitations and assumptions

Meeting at the same pitch is not strict crossing. No contrapuntal legality, spelling or phrase context is inferred.

Numeric inputs, where present, must be finite. Follow the calculation-specific rules for overflow, underflow and exceptional cases. Numeric lists are limited to 10,000 entries; string lists to 128 strings of at most 128 characters each. The rules above may impose smaller limits. Missing required fields, extra fields, wrong value types and violations of the calculation rules are input errors. A successfully returned false flag is an evaluated outcome; its meaning is explained above.

Alternative or Complementary methods

Use Counterpoint Consonance Classifier: Elementary two-voice consonance uses spelled interval quality. Perfect fourths require context and are returned separately from accepted consonances. For a complementary task, use Chord Inversion From Bass Note: Inversion identifies which spelled chord member is the supplied actual bass. A nonchord bass should remain visible rather than forced into an inversion.

References

  1. Voice-Leading Motion Classifier — tool.io

Similar or alternative tools

  • Counterpoint Consonance Classifier

    Elementary two-voice consonance uses spelled interval quality. Perfect fourths require context and are returned separately from accepted consonances.

  • Chord Inversion From Bass Note

    Inversion identifies which spelled chord member is the supplied actual bass. A nonchord bass should remain visible rather than forced into an inversion.

Don't forget to set a bookmark for tool.io!
Privacy | Imprint | Cookies