Notation Software Users Forum

Notation Software Users Forum (
-   MusicXML import and export (Composer only) (
-   -   Vollume changes lost on XML export/import (

dj 01-30-2018 01:37 PM

Vollume changes lost on XML export/import
2 Attachment(s)
Hi, Reinhold:

I find that XML import loses the volume changes settings on re-importing the file to Composer. I have no way of testing whether this is true when loading the file into another program.

Attached are two example screen grabs. The first is of the .not version of the file; the second is the XML version brought back into Composer.

Note also that the free text element ("1st time tacet") at bar 4 in the top staff is lost on XML import.


Reinhold H. 02-04-2018 06:37 PM

Re: Vollume changes lost on XML export/import
1 Attachment(s)


The volume setup in Notation Composer - as well as other song parameters regarding sound - has been developed from the MIDI capabilities. The focus of our software always has been to provide good capabilities to optimize the user's handling for sound, pan, instruments etc. no matter how the notation score looks like. This concept is very special to our design. Notation elements are just extracted either from the basic event stream (which is based on the MIDI event stream) or in case of a new song such an event stream is generated. The GraphOverNotes feature manages this event stream. For volume changes the GraphOverNotes modifies the MIDI controller events which are totally independant from notes. A MIDI controller event sets the volume for a MIDI device to play the next tones in a certain volume. Notes itself have a velocity as part of the MIDI event NoteOn which can also be modified with the Velocity tab in Composer.

MusicXML is totally different. Here the music notation elements are the core or at least almost. From the MusicXML protocol's perspective there is indeed a MusicXML protocol element available to set a volume change independant from notes. But none of the other software programs which we use evaluate this element. We work with Finale, Sibelius, Dorico, Capella, MuseScore. The MusicXML protocol is designed to exchange sheet music among the programs. MusicXML is a framework what can be done but none of the software program today have implemented the full feature set in import nor in export. So, none of these major programs not even the very expensive ones have implement the volume change independant from notes. If none of them have implemented it, it does not make sense for Notation Composer to export note independant volume changes nor to import volume changes this way. Importing MusicXML files by Notation composer which are exported by Notation Composer does not make sense either :).

A further investigation shows that there are 2 possibilities to export a volume change in MusicXML where those other programs have the capabilities to import it:
  • export/import a volume change as part of a Dynamic Mark. See Wikipedia at A Dynamic Mark can be set dependantly or independantly of a note.
  • export/import a volume change as part of a note's velocity

Solution for (1): In order to be flexible with Composer we implemented a solution in 3.0.6-190 as such that at the time point of a dynamic mark the current volume of GraphOverNotes is taken and exported. In MusicXML import the volume from the MusicXML file is taken and a MIDI controller event is created. On the Wikipedia page some fixed volumes are recommended but to me I would rather have it more flexible. Please see the screen shot of how such a score will looks like (this is the imported MusicXML file). From the 5 major competitive programs which we use, 4 are able to import the volume change this way but only one does it 100% perfect for the correct volume and at the correct time point. For your arrangement this would been that you just have to set a dynamic mark in the score at the time of a volume change.

Solution for (2): Composer exports a velocity change today but only one of the other programs is able to take a non-standard velocity and to create notes with different velocities. Composer imports notes with different velocities with 3.0.6-190.

Given what I have learned in this excercise I believe that this is a pragmatic approach to get sound volumes across.

Free text import is also available in 3.0.6-190. But I need to point out that here similar as for other notation elements where graphical dimensions are involved an update is planned. In the current implementation a correct positioning in the score might be necessary after the import. Even for free text there is one program (an expensive one) from those 5s which is not able to import free text today.

Again, thanks for your input.


dj 02-05-2018 01:43 PM

Re: Vollume changes lost on XML export/import
Hi, Reinhold:

Thanks for that explanation.

I recall, many versions ago, that Mark W. was talking about creating active dynamics markings that changed the velocities of succeeding notes, but in the end, it was never implemented.

Your philosophy for XML seems to be a step (somewhat) in that direction.


dj 02-09-2018 01:18 PM

Re: Vollume changes lost on XML export/import
Hi, Reinhold:

We've had a small family emergency here and I wasn't able to download the last beta to respond to your request for input. Now, the site tells me the link has expired, so I assume you've gone ahead with the release.

My apologies.


Reinhold H. 02-09-2018 03:32 PM

Re: Vollume changes lost on XML export/import

I hope nothing serious. All the best. Your link is reset again and available for download.
We have not yet released the new version. Currently we do some MusicXML testing that all is fine because there were some big changes recently. We plan to release it (if all tests are OK and nothing serious comes up) early next week. So, any input is still welcome.


dj 02-10-2018 03:59 PM

Re: Vollume changes lost on XML export/import
5 Attachment(s)
Hi, Reinhold:

Playing with Music XML import again.

Same file as before. Attached are the results on XML re-import. I realize that's a foolish way to do it, but I really don't have any other way of viewing the result.

Attached are some screengrabs of three spots in the original .not file and the same places in the re-imported .mxl file.

The first spot (the "volume graphs 1" pair of jpegs) is at bar 3 where I had manually inserted volume drops to set up 1st time tacet situations. This time I added expression marks there as well. The re-imported .mxl file shows the correct volume drops, along with the expression marks and the free text element in the top staff (which is the clarinet staff).

The second spot ("volume graphs 2") is at bar 9-11. Note that the flute volume (top staff) is is not raised, despite the expression marker, while the 3rd, 4th and 5th staves (which are the brass) show a very slight increase, which actually is probably correct. Again, the free text element appears correctly in the top staff.

The third spot ("volume graphs 3") shows the 2nd staff (clarinet) raised appropriately to the expression marker and the free text element appearing properly.

So, I think the free text is in good order, but the volume changes are still problematic, although better than they were when none happened. :D

I hope that helps.

By the way, the attachments appear, in order with the XML import examples 1 through 3, then the NOT file grabs 1 and 2. The third of those will be in the next post.


dj 02-10-2018 04:00 PM

Re: Vollume changes lost on XML export/import
1 Attachment(s)
Here is the 3rd of the NOT file examples.

dj 02-10-2018 04:03 PM

Re: Vollume changes lost on XML export/import
Oh, and our family situation was somewhat serious. My wife had a slip on ice and was in hospital briefly with a concussion. She's home now, taking it very quietly.


All times are GMT. The time now is 10:48 AM.

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Notation Software Germany GmbH