midi-music-box: Convert MIDI file to music box punch tape

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.

[maintain] [Publish]

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:

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.

You find executables for MS Windows in two ZIP archives there: http://code.haskell.org/~thielema/midi-music-box/

Properties

Versions 0.0, 0.0.0.1, 0.0.0.2, 0.0.0.3, 0.0.0.4, 0.0.0.4, 0.0.0.5, 0.0.1, 0.0.1.1, 0.0.1.2
Change log None available
Dependencies base (>=4.5 && <5), containers (>=0.4 && <0.6), diagrams-lib (>=1.3 && <1.5), diagrams-postscript (>=1.3 && <1.5), 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.15), utility-ht (>=0.0.10 && <0.1) [details]
License BSD-3-Clause
Author Henning Thielemann
Maintainer haskell@henning-thielemann.de
Category Music, 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.4
head: darcs get http://hub.darcs.net/thielema/midi-music-box
Uploaded by HenningThielemann at 2017-06-12T14:38:00Z

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees