[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Export to MusicXML

From: Urs Liska
Subject: Re: Export to MusicXML
Date: Wed, 17 Oct 2018 09:04:53 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1

Am 17.10.2018 um 08:55 schrieb Jan-Peter Voigt:
Hi Kieren,

Am 16.10.18 um 16:54 schrieb Kieren MacMillan:
Hi Jan-Peter,

2. I wrote a rudimentary engraver-based solution last year which is
waiting for clean-up and completion to support MEI, MusicXML
The code in the project is able to export a MusicXML-File for a simple
lilypond-score. The resulting files are not always correct/functional so
this is more sketch of the idea. The base is an engraver that fetches
and collects events and on score-finalization calls the specified export
module with this (normalized) music collection.
The collection is some scheme-structure, but should probably be better a
normal LilyPond music-expression.
1. Why would it be "better" as a normal Lilypond music-expression?
hm, did I misorder my words? Now I think it maybe be better to store the
music in plain lilypond expressions e.g. SequentialMusic. Right now the
music is stored in an alist by measure and moment. That way the exporter
can easily iterate over the measures and moments and place the events in
the resulting export format, but my intuition says that it might be
better if the exporter modules rely on something lilypond can reuse
itself directly. In other words: I think it would be better *not* to
create another structure.
But it is just something to have in mind and to consider while
developing further.

2. Is it currently in a state where someone with limited Scheme chops, but good 
XML chops, could take the MusicXML portion to the goal line?
Right now it is a sketch of an idea, so it might or might not fulfill
anyones needs:

1. it is incomplete in that it doesn't translate all elements.
2. the MusicXML is created "manually" with simple string-concatenation.
That is not a problem if the resulting file is correct, but ...
3. some files are incorrect and cannot be loaded by MuseScore

It would be very helpful to have an XML-lib at hand for the export. I
started a simple function that takes an alist structure end writes it as
XML. But I am hesitant to really use that because if it is injected it
might stop the integration of the standard libs when they are available.

One thought which at least I had never considered yet: what is the SVG backend actually doing? This *does* write XML, isn't it? Would it be an idea to hook into *this* process or at least use some code from there? (Of course an export wouldn't need the layout information and should actually skip the layout process).




Kieren MacMillan, composer
‣ website:
‣ email: address@hidden

lilypond-devel mailing list

reply via email to

[Prev in Thread] Current Thread [Next in Thread]