Realize a single chord as one MIDI pitch per voice, ascending (index 0 =
lowest). The bass voice takes the chord's bassPc when set, otherwise the
root; upper voices take chord pitch classes, doubling the root or fifth as
needed to fill all voices. The result stays inside each voice's range, keeps
adjacent upper voices within maxSpacing, avoids voice crossing, and is
deterministic: a compact close-position voicing centered in the ranges.
Realize a single chord as one MIDI pitch per voice, ascending (index 0 = lowest). The bass voice takes the chord's
bassPcwhen set, otherwise the root; upper voices take chord pitch classes, doubling the root or fifth as needed to fill all voices. The result stays inside each voice's range, keeps adjacent upper voices withinmaxSpacing, avoids voice crossing, and is deterministic: a compact close-position voicing centered in the ranges.