@music-i18n/verovio
v1.4.0
Published
Forked version of Verovio with music-i18n support.
Downloads
558
Maintainers
Readme
@music-i18n/verovio
Forked version of Verovio that includes music-i18n fixes. Music internationalization refers to the process of adapting music software to work with non-Western Common Practice structures, such as microtonality.
Verovio is a fast, portable and lightweight library for engraving Music Encoding Initiative (MEI) music scores into SVG.
See it running in the browser and check out the tutorial for its web integration and for enabling user interaction.
This fork
This fork is about adding full support for "music-i18n" (music internationalization) to Verovio. This includes:
- Supports all SMuFL accidental glyphs. Not all bundled fonts support these glyphs, so make sure to use Bravura.
- Fixes MIDI SysEx export which is broken on the main trunk.
- Supports MEI temperaments for MusicXML via the element
sound/play/other-play[@type = "tuning-mei"] - Supports full microtonality via Ableton ASCL tunings for both MEI (via option
tuningFile) and MusicXML (via both optiontuningFileand MusicXML elementsound/play/other-play[@type = "tuning-ableton"]).
Basic usage
The recommended usage of the package is with ESM. Use .mjs as file extension when using this directly in Node.js or set "type": "module" in your package.json.
import createVerovioModule from 'verovio/wasm';
import { VerovioToolkit } from 'verovio/esm';
const VerovioModule = await createVerovioModule();
const vrv = new VerovioToolkit(VerovioModule);
vrv.setOptions({
tuningFile: await (await fetch('/path/to/tuning.ascl')).text(),
font: 'Bravura',
});
vrv.loadData(await (await fetch('/path/to/score.mei')).text());
const svg = vrv.renderToSVG();
const midi = vrv.renderToMIDI();