smt_main_screenLearning to sight read or play sheet music can be a daunting task, but practicing regularly with Sheet Music Teacher (SMT) can greatly reduce the learning curve. SMT generates sheet music for you to play along to with your MIDI instruments. As you play, correctly and incorrectly played notes are marked in green or red respectively. Information about your practice session such as accuracy, speed, and a score, are displayed when the end of the practice session is reached. With various levels of precision, pluggable sheet generator libraries, session history and trend graph, SMT is a great tool for beginners and experts alike.

Click here to download the lateest version of SMT.

Note: Some browsers may flag the download as dangerous or malware. This is due to the Launch4J windows executable packaged in the distribution. It is used to start a Java virtual machine for SMT and is 100% safe.

Installing SMT

    1. To run SMT on your system, Java 1.6 or better is required. Download it from here.
      • Once you’ve installed Java, make sure the JAVA_HOME environment variable is set. (Google)
    2. Download SMT v0.3.1 using the green download button above.
    3. Extract the ZIP file to a location of your choosing.
    4. Use the appropriate script to start SMT:
      • For Windows systems, use the SheetMusicTeacher.exe file.
      • For Linux systems, use the bash script.

Using SMT

To use SMT you should have:

    • A MIDI instrument such as a Yamaha P140 keyboard.
    • An interface between your instrument and computer such as a M-Audio Uno USB interface.

SMT is easiest to use when installed on a laptop and placed in a location where sheet music can be read like paper sheet music:

Typical SMT setup.


Sheet Generators

If anyone is interesting in contributing sheet generators or translations for SMT, please email me at

Support and Licensing

Please send an email to regarding any suggestion, questions, problems, or bugs found. Keep in mind, this is a beta release, there are still many glitches and issues that hopefully will get worked out sooner or later. The current software version is 0.3.1.

SMT is licensed under the GNU General Public License.