Today a vast range of apps and applications exist that do something with music notation. Whatever the application does, whether it displays music, edits music, plays music or teaches music, the music has to come from somewhere. Usually that is either
If the music comes from a fixed library it can be handled flexibly by the app. The app can reformat to suit the user, it can be marked up for interactive playing, the app can accompany an instrument or a voice etc. But the music available probably won’t be exactly what the user wants. The piece might not be available, or in the edition the choir is using, or arranged for the right instrument.
On the other hand if the app can scan in or import music from anywhere, there is no limit to what can be accessed. But now the app can’t do anything that requires knowledge of the music. To the app the music is just a series of pictures. All it can do is show them.
This is where OMR comes in. An OMR enabled application has the best of both worlds: it can accept music from anywhere, but it can also handle it flexibly – reformat, play, and generally interact.
Today with ReadScoreLib, OMR is easy to integrate into any application that already uses MusicXML, but ReadScoreLib also works well for applications that simply display the music pages as published. ReadScoreLib includes APIs that let your users interact with the music just as PlayScore 2 does. ReadScoreLib can tell you exactly what musical symbols are on the page, including their accurate bounding boxes. And it can relate those graphical symbols to beats in the bar. This allows tee application to provide a rich interactive environment.