Vocal Range Transposition Check

Transpose a MIDI-note range and test it against a supplied performer range.

Description

Transposition shifts a song's lowest and highest pitches by the same semitone amount.

Transposition shifts a song's lowest and highest pitches by the same semitone amount. Containment within a performer's supplied range is a pitch-extents check.1

Transpose a MIDI-note range and test it against a supplied performer range.

When to use Vocal Range Transposition Check

Use this tool to transpose a MIDI-note range and test it against a supplied performer range.

Prepare the measurements or record lists for the intended production, performer, cohort or planning period. Confirm units, shared time/coordinate conventions and supplied targets.

How to use Vocal Range Transposition Check and understand its results

  1. Prepare the measurements or record lists for the intended production, performer, cohort or planning period. Confirm units, shared time/coordinate conventions and supplied targets.
  2. Enter lowestMidiNote, highestMidiNote, semitoneShift, performerLowestMidiNote, performerHighestMidiNote using the field table and calculation rules, then run the tool.
  3. Read transposedLowestMidiNote, transposedHighestMidiNote, fitsPerformerRange. 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
lowestMidiNoteLowest source MIDI noteinteger; minimum: 0; maximum: 127Required
highestMidiNoteHighest source MIDI noteinteger; minimum: 0; maximum: 127Required
semitoneShiftSemitone shiftintegerRequired
performerLowestMidiNotePerformer lowest MIDI noteinteger; minimum: 0; maximum: 127Required
performerHighestMidiNotePerformer highest MIDI noteinteger; minimum: 0; maximum: 127Required

Enter integer song/performer endpoints from MIDI 0–127 with ordered ranges, plus an integer semitone shift. Add the shift to both song endpoints and compare inclusively with performer bounds. Return shifted endpoints and fit flag.

shiftedLow=lowest+semitoneShift; shiftedHigh=highest+semitoneShift; fits if both inside performer range

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

Output fieldMeaningValue type
transposedLowestMidiNoteTransposed lowest MIDI noteinteger
transposedHighestMidiNoteTransposed highest MIDI noteinteger
fitsPerformerRangeFits performer rangeboolean
json
{
  "input": {
    "lowestMidiNote": 60,
    "highestMidiNote": 72,
    "semitoneShift": -2,
    "performerLowestMidiNote": 55,
    "performerHighestMidiNote": 71
  },
  "output": {
    "transposedLowestMidiNote": 58,
    "transposedHighestMidiNote": 70,
    "fitsPerformerRange": true
  }
}

Limitations and assumptions

Shifted outputs are not independently constrained to MIDI 0–127. Tessitura, vocal register, sustained-note comfort, timbre and performance technique are not assessed by endpoint containment.

Numeric inputs must be finite. Follow the calculation-specific rules for overflow, underflow and exceptional cases. 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 Traverse Sightline: Summarize traverse-stage sightline angles against a supplied clearance minimum. For a complementary task, use Stage Sound Sync Delay: Calculate the sound-delay adjustment needed to reach a caller-defined audiovisual offset.

References

  1. Vocal Range Transposition Check — tool.io

Similar or alternative tools

  • Traverse Sightline

    Summarize traverse-stage sightline angles against a supplied clearance minimum.

  • Stage Sound Sync Delay

    Calculate the sound-delay adjustment needed to reach a caller-defined audiovisual offset.

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