MusicBoxConverter/README.md

40 lines
1.5 KiB
Markdown
Raw Normal View History

# MusicBoxConverter
> Converts MIDI files into music box scores that are ready to print.
2017-12-03 16:52:50 +00:00
## Usage
1. Export the MuseScore file to a MIDI file
2. Run the MIDI file through this program.
3. Open the resulting SVG in Inkscape
2019-02-21 23:11:57 +00:00
4. Print the SVG to PDF (or `inkscape --export-pdf output.pdf input.svg`)
2017-12-03 16:52:50 +00:00
5. Open the resulting PDF in LibreOffice Draw
6. Print to your actual printer - tiling over multiple pages if required.
This somewhat convoluted process prevents anyone from automatically rescaling it along the way.
2019-02-21 23:50:40 +00:00
If the above doesn't work, it's probably LibreOffice Draw scaling it even though you've told it not to. In that case, try this:
```bash
# Convert MIDI -> SVG
./MusicBoxConverter.exe --input song.midi --output score.svg
# Convert it to png
inkscape -e score.png score.svg
# Convert the PNG to PDF, rotating by 90 degrees
convert score.png -rotate 90 score.pdf
# Split the PDF up into multiple pages for the printer
# -s1 Don't scale the output
# -m Sets the output paper size. Defaults to A4 (21x29.7cm) if unspecified, but may need to reduce by a cm or 2 on each side (as below) if things get cut off.
2019-02-24 00:36:16 +00:00
pdfposter -s1 -m 20x27.7cm score.pdf print.pdf
2019-02-21 23:50:40 +00:00
```
2019-02-22 01:05:13 +00:00
....if that cuts things off at the edges, try doing it like this:
```bash
convert score.svg score.pdf
pdfposter -s1 score.pdf print.pdf
```
## Useful Links
- [ffmpeg - showspectrumpic manual](https://ffmpeg.org/ffmpeg-filters.html#showspectrumpic)
- [Frequency to Musical Note Converter](https://newt.phys.unsw.edu.au/music/note/)