Skip to main content

Unroll is a Python module to ease transcription of piano rolls to sheet music. It transcribes either a MIDI file or a video of a piano roll. It finds the notes, the tempo, roughly separates the hands, and writes the result in a Lilypond file. In particular

You can use it like this:

# TO TRANSCRIBE FROM A VIDEO

from unroll import video2scan, rollscan2keystrikes
focus = lambda im : im[[156],58:478]
scan = video2scan(videofile = "limehouse_nights.mp4", focus = focus)
keystrikes = rollscan2keystrikes(scan)
keystrikes = ks.transposed(26)
keystrikes.transcribe('score.ly', quarter_durations = [2,10,0.02])

# TO TRANSCRIBE FROM A MIDI FILE

from unroll import midi2keystrikes
keystrikes = midi2keystrikes('tiger_rag.mid')
ks.transcribe('score.ly', quarter_durations = [50,100,0.02])

Then you must edit score.ly to correct the mistakes and when you are done you compile it with

lilypond score.ly

Installation

Unroll can be installed by unzipping the source code in one directory and using this command:

(sudo) python setup.py install

You can also install it directly from the Python Package Index (PYPI) with this command:

(sudo) pip unroll install

Contribute

Unroll is an open-source software originally written by Zulko and released under the MIT licence. The project is hosted on Github and everyone is welcome to contribute ! Please give feedback if you are using it and encounter difficulties.

Metadata

Release files for unroll 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for unroll 0.1.0
File Size Uploaded
unroll-0.1.0.tar.gz 7.3 kB Details

Release files / unroll-0.1.0.tar.gz

Download URL unroll-0.1.0.tar.gz
Size 7.3 kB
Tags Source
SHA-256 checksum
How to use checksums
2de37a1a04c3ee7a92c005a3798cb71a6addd1ba7136e454404785902121c753
BLAKE2b-256 checksum
How to use checksums
fe3c124bdf4276e582c8e4e23ce27c4462a259f6608df8e550d30f003f2b4189
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.1.0 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page