[BRLTTY] Early Notice: BMC -- The Braille Music Compiler

Mario Lang mlang at delysid.org
Sat Apr 14 13:14:31 EDT 2012


Hi everyone.

Sorry for being off-topic, but this list has probably the highest amount
of actual braille users with some affinity to free software that I know
of, so please excuse my shameless plug.

I am currently working on a project to automatically parse and
understand braille music code such that it can be converted to other
formats like LilyPond or MusicXML.  The project is called BMC which
stands for Braille Music Compiler.  It has not been officially released
yet, but it can already do some quite interesting things.

As an example for those of you that can read braille music code, below
is a piece from J.S. Bach (variation 13 of the Goldberg Variations,
BWV988) which can already be parsed and translated by BMC.  It is
encoded with Unicode Braille to avoid problems with differing
international braille tables.  If you can not read the content of the
file below on the Linux console, you might want to have a look at the
console-braille package from Debian which contains fonts for rendering
Unicode Braille on the Linux console.

-------------- next part --------------
????
  ???????????????????????????????????????????????????????????????????????
??????????????????????????
  ??????????????????????????????????????????????????????????????????????
  ??????????????????????????????????????????????????????
?????????????????????????????????????????????????????????
  ??????????????????????????????????????????????????????????????????????
  ?????????????????????????????????????????????????????????????????????
??????????????????????????????????????????????????????????
  ?????????????????????????????????????????????????????????????????????????????
??
  ????????????????????????????????????????????????????????
??????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????
  ????????????????????????????????????????????????????????
??????????????????????????????????????????
  ??????????????????????????????????????????????????????
???????????????????????????????????????????????????????????
  ?????????????????????????????????????
????????????????????????????????????????????????
  ?????????????????????????????????????????????
????????????????????????????????????????
????????????????????????????????????????????
???????????????????????????????????????????
  ???????????????????????????????????????
????????????????????????????????????????????
  ??????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????
  ??????????????????????????????????????????????????
??????????????????????????????????
  ????????????????????????????????????????????
??????????????????????????????????????????
????????????????????????????????????????????????????????????????????
  ???????????????????????????????????????????????????????????????????????????
??????????????????????????????????
-------------- next part --------------

Using BMC, the input above can be translated to the following LilyPond file:

-------------- next part --------------
A non-text attachment was scrubbed...
Name: bwv988-v13.ly
Type: text/x-lilypond
Size: 7109 bytes
Desc: LilyPond version of BWV988 var. 13 generated by BMC
URL: <http://mielke.cc/pipermail/brltty/attachments/20120414/94fff850/attachment.bin>
-------------- next part --------------

Which can ultimately be converted to PDF and MIDI using LilyPond.  Since
the PDF version is probably of low interest to the typical reader of
this list, I am attaching the MIDI file so that you can actually listen
to the braille music which was used as the ultimate source for this conversion:

-------------- next part --------------
A non-text attachment was scrubbed...
Name: bwv988-v13.midi
Type: audio/midi
Size: 6788 bytes
Desc: BWV 988 var. 13 Standard MIDI File
URL: <http://mielke.cc/pipermail/brltty/attachments/20120414/94fff850/attachment.midi>
-------------- next part --------------


If you are familiar with the inherent ambiguity of braille music code
you might realize that it is actually not easy to interpret the example
braille music score above: It uses note groupings.  However, BMC can
already fully understand music of that complexity.  As far as I know, it
is the first program ever that can do something like this.

There is quite some work ahead still, since there is quite an extensive
list of features planned for BMC.

If you are familiar with braille music code and would like to see a free
software project for handling/converting/listening to braille music,
please consider contributing in some way.  I have learnt as much as I
could about braille music code in the last 5 years or so, but I am still
more of a programmer then a musician.  What I desperately need are
people that know their share about braille music code which could help
me to create more input examples which are valid braille music code but
not handled by BMC yet such that I can use the example input to develop
the parser and compiler further.
However, if you are into programming then I am sure I can find some fun
task for you as well.
We ultimately plan to provide a port of BMC for all three major
operating system that are relevant to blind users: Linux, Mac OS X and Windows.

In any case, if you find this interesting, please make sure to contact
me off-list so that we can figure out how to best cooperate in the
future.

If you want to take a look at the code, or compile BMC yourself so that
you can already make use of its current features, you can find it on
github: https://github.com/mlang/bmc/

Thanks for your time.

-- 
CYa,
  ?????


More information about the BRLTTY mailing list