An overview for developers for displaying sheet music in their own web music score projects.
We are asked again and again, which sheet music display libraries there are besides OpenSheetMusicDisplay (OSMD). Software that let’s you realize projects around displaying interactive sheet music in the web browser. Here is an overview in alphabetical order.
Abcweb
abcweb is a Javascript program that renders a sheet music file (MusicXML or ABC) and plays a synced media file (audio or video). abcweb was developed by the Dutchman Willem Vree. It enables the display and playback of musical notes (mp3 or ogg audio) as well as synchronization with Youtube or mp4 videos. Furthermore, a so-called follower and other extensive features are also available. Attention: There are no licenses listed on the website.
alphaTab
alphaTab is a cross-platform music notation and guitar tablature rendering library. Sheet music can be loaded from Guitar Pro or you can use the proprietary markup alphaTex. The music notes can also be played. alphaTab was developed by the Austrian Daniel Kuschny and is available under the LGPL license.
EasyScore
https://github.com/0xfe/vexflow/wiki/Using-EasyScore
EasyScore is a language that can be used to create all the VexFlow elements (see www.vexflow.com) necessary for music notation. The language supports notes, bars, dots, tuplets and other common notation elements. For rendering, the open source online music notation rendering API VexFlow.com is used.
Flat.io
Flat is a well-known notation web app. Flat’s Music Notation Embed uses standard HTML5 (SVG) and JavaScript. MusicXML or MIDI files can be imported and displayed. An extensive API is available. For customizations you need your own license, which can be requested via the website.
OpenSheetMusicDisplay
https://opensheetmusicdisplay.org/
The new kid on the block. OpenSheetMusicDisplay (OSMD) is developed by the Viennese music tech company PhonicScore.com and aims to provide an open source JavaScript engine for MusicXML using VexFlow (for rendering). OSMD supports .mxl and .xml files and is constantly being extended. Due to the 100% open source approach for calculating and rendering sheet music, OSMD is backed by a constantly growing development community.
Scorecloud
http://doremir.com/b2b/scorecloud-player/
The ScoreCloud Embed Player is a web player for notes. It can display and play notes from MusicXML or PDF/MP3. It reacts to mobile, tablet and desktop browsers and has a zoom and full screen mode. The player has a mixer where you can hear individual voices. You can easily navigate through the score and it offers interaction for changing tempo and pitch.
Soundslice
https://www.soundslice.com/plans/#licensing-plan
Soundslice is a web-based music learning software, specialized in guitar. Founded by Adrian Holovaty – who also developed the well-known web framework Django – in Chicago, Illionis, USA, Soundslice licenses the “Soundslice Player” for companies. The notes can be syncronized (manually) with Youtube videos. The player has an extensive API, which is customizable via URL parameters for simple cases and via JavaScript for advanced users.
The Guido Engine Library
http://guidolib.sourceforge.net/
The Guido Engine Library is a generic, portable library and API for the graphical representation of sheet music. The library is based on the GUIDO Music Notation Format as the underlying data format. The Guido Engine Library includes a C/C++ shared library, a Javascript library, multi-platform SDKs, a Java JNI interface and Qt standalone applications.
Verovio
https://www.verovio.org/index.xhtml
Verovio is a fast, portable and lightweight open-source library for engraving Music Encoding Initiative (MEI) music scores into SVG. Verovio is developed by the Swiss RISM Office with the support of the Swiss National Science Foundation. So if you have MEI scores you want to display online, then Verovio is your number one solution. But there is more – Verovio features a MusicXML to MEI converter so you could use it with MusicXML as well.
VexFlow
VexFlow is an open source online music notation rendering API. It is completely written in JavaScript and runs directly in the browser. VexFlow supports HTML5 Canvas and SVG. VexFlow does not support MusicXML, but you either work directly in JavaScript or depend on the proprietary format VexTab. If you want to use VexFlow with MusicXML, OpenSheetMusicDisplay.org is the right choice.
Did we miss anything? If this is the case, please send an email to t.buchstaetter@opensheetmusicdisplay.org and we will add it to the list.