C++ LGPL-3.0

verovio

🎵 Music notation engraving library for MEI with MusicXML and Humdrum support and various toolkits (JavaScript, Python)

R

rism-digital

Dernière activité 25 sept. 2026
rism-digital/verovio

933

étoiles

247

forks

175

issues ouvertes

digital-scoresjavascriptmeimusicmusic-notationmusicxmlnotationpypisheetmusicsvg

Ce README est souvent en anglais.

License: LGPL v3 PyPI PyPI - Wheel AppVeyor status GH Actions status PyPI - Downlaods NPM - Downlaods DOI Ask DeepWiki

Verovio is a fast, portable and lightweight library for engraving Music Encoding Initiative (MEI) digital scores into SVG images. Verovio also contains on-the-fly converters to render Plaine & Easie Code, Humdrum, Musedata, MusicXML, EsAC, and ABC digital scores.

Verovio is written in standard C++20 and is available in several bindings (JavaScript, Python, Java, Swift, Go). It can be compiled as a standalone command-line tool or as a music-rendering library for applications. Check out the JavaScript toolkit version of Verovio running in the Verovio Online Editor / Viewer, or the tutorials to know more about web integration and user interaction.

Choice interaction

Minimal sample applications

C++ with Qt Java binding on Android Swift binding on iOS
Code repository Code repository - GooglePlay AppStore
iPad iPad iPad

Verovio uses the Standard Music Font Layout (SMuFL) specification and the font can be changed for personalizing the output.

License

Verovio is available under the LGPL license (see COPYING and COPYING.LESSER).

Building and use instructions by environment

See the Reference book

Libraries

LibMEI

The code for the attribute classes of Verovio are generated from the MEI schema using a modified version of LibMEI available here. The code generated is included in the Verovio repository and the LibMEI repository does not need to be cloned for building Verovio.

Embedded libraries

The following libraries are embedded in Verovio:

library purpose
humlib Humdrum file import/export
JSON++ JSON data parser
MidiFile Standard MIDI file export
pugixml XML data parser
MINIZ-CPP ZIP files reading/writing
tuning-library Surge Synth Team Tuning Library

Contributing

See the Reference book

Projets similaires

MuseScore is an open source and free music notation software. For support, contribution, bug reports, visit MuseScore.org. Fork and make pull requests!

C++cppmusescoremusic-notation
Mmusescore
15,2 k étoiles3,3 k

javascript for rendering abc music notation

HTMLabc-notationabcjsjavascript
Ppaulrosen
2,4 k étoiles374

OpenSheetMusicDisplay renders sheet music in MusicXML format in browsers and headless with NodeJS. Based on VexFlow, OSMD is brought to you by PhonicScore.com.

TypeScriptdigital-sheet-musicheadlessmusic
Oopensheetmusicdisplay
2 k étoiles379