Unoffical audio playback engine for OpenSheetMusicDisplay. Successor meant to replace my previous proof of concept player & demo at https://github.com/jimutt/osmd-playback-demo.
This player is still in a very early state and lots of breaking and non-breaking changes will most likely be introduced before the first major release. Use at your own risk!
npm install osmd-audio-player
Basic no-framework demo with only play, pause & stop functionality.
Live demo: https://osmd-audio-player-demo-basic.netlify.com/
Source: https://github.com/jimutt/osmd-audio-player/tree/master/demos/basic
A more full-featured demo featuring configurable instruments, level control, switching scores & changing tempo.
Live demo: https://osmd-audio-player-demo-vue.netlify.com/
Source: https://github.com/jimutt/osmd-audio-player/tree/master/demos/vue-player-demo
You might notice that there's currently a quite large delay when switching instruments. It's due to the in-advance scheduling to prevent interruptions & timing issues in the audio playback, and there's currently no clearing/reset of the buffer when an instrument change takes place. Some improvements in that area are planned.
- Framework agnostic, not tied to a specific front end Framework
- Multi-instrument support
- Individual level controls
- Automatic tempo detection from score
- Automatic instrument assignment
- Repeat support
- Dynamics support
- Grace note support
- Click to set playback position
- React demo project
- Updated & properly structured Vue demo
- Quickstart guide & more extensive Readme
- Custom audio stack for playing soundfonts
- Stricter typing
- Unit tests