images/harmoniasplash35.png
images/download.png
Get Harmonia for Mac 1.0.0 free on Mac App Store
images/download.png
Get Harmonia for Windows 1.0.0 for XP/Vista/7/8
images/download.png
Get Harmonia for iPad
Coming soon to iTunes store!

Harmonia is a music theory application that combines notation, automatic analysis and grading, word processing, and multimedia playback. The goal of Harmonia is to replace paper-based music theory — textbooks, workbooks, handouts, homework and tests — with enriched PDF documents that allow music content to be created, edited, searched, annotated, automatically analyzed and automatically graded, all within an elegant, user-friendly interface.

To learn more about our project and goals you can view an introductory presentation.

E-mail harmonia-music@illinois.edu for questions and comments.


Features

Harmonia PDF Documents
images/introduction.png
Harmonia documents are a dynamic flow of text, images and analytical scores with MIDI, audio and video playback. Document format is PDF so Harmonia content looks exactly the same when you print it or open it in an external PDF viewer.
Automatic Grading
images/grading.png
Harmonia can automatically analyze and grade student homework. The letter grade depends on the teacher's point/error distribution and grading curve.
Embedded Scores and MusicXML
images/corpus.png
Harmonia's embedded score browser contains the complete Bach Chorales and (a few) piano scores. You can add your own scores to the browser by importing them from MusicXML.
Homework Creation
images/homework.png
It is easy to turn a score into a composition or analysis homework template! This analysis homework uses Harmonia's student key randomization feature.
Multimedia Resources
images/multimedia.png
Harmonia pages can link to external multimedia resources without having to switch applications. Audio, video and MIDI playback is controlled directly on the page using Harmonia's own pop-up multimedia transports. Notation playback uses a high-quality MIDI plugin with realtime controls over tempo and volume.
Analytical Searching
images/searching.png
Harmonia can search scores for roman numerals, sonorities, and compositional features such as unresolved leading tones, parallel octaves, etc. Searching happens real-time and matches are highlighted directly in the score.

What's Next

Harmonia is a brand-new application. In the coming weeks we will be posting more materials that explain how to use the app and its automated theory teaching features (new tutorials will appear automatically in the Help menu when you start the app.) Harmonia will be used to teach two theory courses here in Fall '13; if you are interested in automating your own materials or have materials and scores that you are willing to share please feel free to contact us. Additionally, we are looking for individuals who would be willing translate Harmonia's English menu text into other languages; we can provide a simple a text file to facilitate this process if you are interested in helping (it would require an hour or two of work).

Upcoming

The current release (1.0.0) contains the main functionality of Harmonia. We anticipate a 1.1 release in May, with important updates along the way. The next update (March) will address the following issues:

We are interested in working with other theory teachers, incorporating different homework designs and grading strategies at use in other schools. We would also like build a database of homework templates, excerpts and complete pieces that teachers could use in their own courses.


Content

The complete Bach Chorales in Harmonia originate from the excellent JSBChorales.net, curated by Margaret Greentree and released "free" with no formal license. We edited this score data by (1) adding fermatas to all parts at fermata points according to the Remienschneider edition (2) replacing implicit (written-out) repeated sections with repeat bars, and (3) saving short score and full score versions.


Sources

Harmonia is a large project containing a number of different libraries and some 100,000 lines of C++ code. We release the majority of the code — core features of the application including its music representation, notation library and automatic music analysis engine — as open-source libraries. Please consult the licensing and README files in the downloads for more information.

Harmonia also uses the excellent JUCE library for developing cross-platform C++ apps and Xerces for loading MusicXML. The application's icon set is by Glyphicons.




images/uclogo_horz_pro50.gif