FreeDots: MusicXML to Braille music translation (status-update)

Josh jkenn337 at
Wed Mar 19 17:30:19 UTC 2008


I hope when this is done that there will be a version for windows available.


email: jkenn337 at
msn: kenn6498ku at
skype: jkenn337
----- Original Message ----- 
From: "Mario Lang" <mlang at>
To: "Linux for blind general discussion" <blinux-list at>
Sent: Wednesday, March 19, 2008 12:25 PM
Subject: FreeDots: MusicXML to Braille music translation (status-update)

> Hi.
> FreeDots ( is a tool to work
> with MusicXML files for blind users.  It can "translate" MusicXML files
> to braille music notation, play the score via MIDI and also features an
> interactive (BrlAPI based) mode for viewing MusicXML score files and
> interactively selecting individual braille music symbols for playback 
> (with
> cursor routing keys).
> This is basically an update to my initial announcement on this list.
> FreeDots is still in prototyping stage, and some well known braille music
> conventions like note groupings and music written on two (or more) staves
> are still not supported.  But there are things that do already work quite 
> well.
> In fact, I have started to use FreeDots for two of instruments I play 
> (flute
> and guitar) already and it has prooven very useful.  What I find 
> particularily
> useful (and what I always miss when reading printed braille music) is the
> ability to just "click" on a braille music symbol and be able to listen to 
> it.
> In FreeDots, you can interactively playbacka a whole system, a measure or
> the individual notes.  This is very useful for learning
> to read braille music and it makes the learning curve feel must less 
> anoying.
> What does work:
> * Music on one staff, possibly several parts (choral music, guitar, all
>   sorts of monophnoic instruments like flute, sax and so on)
> * Chords (currently not clef sensitive, intervals are always upward).
> * Slur marks (no doubling support yet).
> * Fingerings (if correctly encoded in MusicXML).
> * Articulation marks like accent, staccato, tenuto and the like.
> What doesn't work:
> * Parts with more then one staff (actually, they are there, but not 
> formatted
>   correctly, so its mostly a cosmetic issue).  This mostly concerns 
> keyboard
>   music.
> * Note grouping.  I have an idea on how to implement it, but I need to 
> settle
>   the multiple staff issue first.
> * Harmony and figured-bass.  This is a feature I'd like to have at some
>   point, but it is not very high on my priority list.
> * Lyrics.  In fact, the lyric get parsed and displayed, but there needs
>   to be some formatting logic written to make things nice and clean.
>   This would be especially desireable because of sites like 
>   They have a large collection of lead-sheets in MusicXML format
>   for download.
> * Many other special rules of braille music which I ignored for simplicity
>   for now or which I don't even know yet!
> FreeDots is written in Python.  Apart from some utility modules for
> doing MIDI file output and rational numbers, the code base currently 
> consists
> of roughly 1300 lines of code:
>   60 freedots/
>   87 freedots/
>  125 freedots/
>  274 freedots/
>  310 freedots/
>  432 freedots/
> If you have knowledge about braille music (or you want to learn it) and
> you are looking for a Free Software project to contribute to,
> don't look further! :-)  While I've been able to make pretty much
> progress in a relatively short amount of time, the overall task
> of writing a complete braille music formatting program is
> pretty huge.  To succeed, we will need people that sit down and help
> us implement their favourite pet braille music feature.  If you are
> a piano player with programming know-how, you might as well send me
> a patch for multi-staff music.  If you are a programmer with no music 
> background
> at all, you can still review the (probably very ugly) code and
> send suggestions on how to improve things.  This will help in the long 
> run.
> Anyway, I think you get the idea.  I need help! :-)
> URL:
> -- 
> CYa,
>  ⡍⠁⠗⠊⠕ | Debian Developer <URL:>
>  .''`. | Get my public key via finger mlang at
> : :' : | 1024D/7FC1A0854909BCCDBE6C102DDFFC022A6B113E44
> `. `'
>   `-      <URL:> 
> <URL:>
> _______________________________________________
> Blinux-list mailing list
> Blinux-list at

More information about the Blinux-list mailing list