Pitch speller tools for use with the dn-m ecosystem and beyond


Swift Version Platforms Build Status

The PitchSpeller module contains work toward a flexible pitch spelling algorithm, as formalized in my Harvard undegrad thesis. This project aims to take unspelled pitch information (e.g., MIDI note numbers), and produce optimal spelled versions of them, given the musical context and user preference.

PitchSpeller builds off of the dn-m ecosystem making use of the musical, notational and algebraic structures defined in dn-m/Music, dn-m/NotationModel and dn-m/Structure.


Work on this package requires Swift 5.0.

Build instructions

Clone the repo.

git clone https://github.com/bwetherfield/PitchSpeller

Dive inside.

cd PitchSpeller

Ask Swift Package Manager to update dependencies (all are dn-m).

swift package update

Compiles code and runs tests in terminal.

swift test

Ask Swift Package Manager to generate a nice Xcode project.

swift package generate-xcodeproj

Open it up.

open PitchSpeller.xcodeproj/


  • Swift Tools 5.0.0
View More Packages from this Author


Last updated: Mon Nov 07 2022 20:39:22 GMT-0500 (GMT-05:00)