Source code and file documentation
I am an old programmer (actually retired), and a new musician. I tried to write my own plug-in, but found too many obstacles.
At first, I found that MuseScore does not expose the Harmony object. After it was added to a chord or a rest, there's no way of retrieving it. Then, I was advised to export the current score as an XML file, and then extract the harmonies from that. Since JavaScript has no XML reading mechanism, and since QxmlStreamReader does not work within a MuseScore script, I spent about two weeks writing my own XML parser. However, after all of this work, I found that XML exporting is not accurate, and that it does not reflect the score precisely.
I think of fixing the bugs, but it has been almost ten years since I wrote my last C++ program. Another alternative is to read the .mscx file, and manipulate it in an external program. For both alternatives, I need the relevant source code and documentation.
Any comments?
Comments
First you could open a feature request to expose the Harmony object and what you need in the Harmony object in the next version of MuseScore. MSCX is not documented and will probably never be. MusicXML is the good way. If you found innacuracies please report them.
The code is available in SVN : http://sourceforge.net/scm/?type=svn&group_id=109430
Instructions to compile are available here : http://musescore.org/en/developers-handbook