midi-music-box: Convert MIDI file to music box punch tape
Convert MIDI file to music box punch tape for this kind of music box: http://www.amazon.de/Spieluhr-Lochstreifen/dp/B001WNZOVO/
Run it like so:
midi-music-box --output=song.ps song.mid
song.mid
is the input file that must be a MIDI file.
song.ps
is the output file, a PostScript file.
You can print it with a printer or to a PDF document
or convert it to many other formats.
Currently, the output file must always have the .ps
filename extension.
Other formats could be supported by adding more of the diagrams-*
packages.
However, this means you have to alter the program.
The program will print the following symbols to the stripe:
blue dot - correct note that should be punched
# - this is a semitone and cannot be played accurately (at least on the type of music box I refered to, above)
! - the note is outside the range
In case of notes outside the stripe you have to adapt the offset. You may write
midi-music-box --zerokey=72 --output=song.ps song.mid
in order to make the MIDI note with number 72
the left-most note on the stripe.
Default is --zerokey=60
.
The number of notes in an octave is 12.
If you use a zerokey that is a multiple of 12
then white (piano) keys remain white, and black keys remain black,
so to speak.
If zerokey is not a multiple of 12
then white keys may become black an vice versa.
Since the music box type considered here only supports white keys,
I recommend the following:
If the song is in key X major then lookup the MIDI note number for X
and choose X plus or minus a multiple of 12 as zerokey.
If the song has key Y minor, then X=Y+3.
Downloads
- midi-music-box-0.0.0.1.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
Versions [RSS] | 0.0, 0.0.0.1, 0.0.0.2, 0.0.0.3, 0.0.0.4, 0.0.0.5, 0.0.1, 0.0.1.1, 0.0.1.2 |
---|---|
Dependencies | base (>=4.5 && <4.9), containers (>=0.4 && <0.6), diagrams-lib (>=1.3 && <1.4), diagrams-postscript (>=1.3 && <1.4), event-list (>=0.1.1 && <0.2), midi (>=0.2.1 && <0.3), non-empty (>=0.1.3 && <0.4), optparse-applicative (>=0.11 && <0.13), utility-ht (>=0.0.10 && <0.1) [details] |
License | BSD-3-Clause |
Author | Henning Thielemann |
Maintainer | haskell@henning-thielemann.de |
Category | Sound |
Home page | http://hub.darcs.net/thielema/midi-music-box |
Source repo | this: darcs get http://hub.darcs.net/thielema/midi-music-box --tag 0.0.0.1 head: darcs get http://hub.darcs.net/thielema/midi-music-box |
Uploaded | by HenningThielemann at 2016-04-24T09:13:13Z |
Distributions | LTSHaskell:0.0.1.2, NixOS:0.0.1.2, Stackage:0.0.1.2 |
Reverse Dependencies | 1 direct, 0 indirect [details] |
Executables | midi-music-box |
Downloads | 6032 total (34 in the last 30 days) |
Rating | (no votes yet) [estimated by Bayesian average] |
Your Rating | |
Status | Docs not available [build log] All reported builds failed as of 2016-11-26 [all 1 reports] |