Should dummy notes be exported to MusicXML?
A dummy note is a note that is both invisible and inaudible (i.e. its playback has been disabled via the Inspector and/or its velocity has been set to zero).
The only reasons I can think of for using dummy notes are to work around bugs or limitations in MuseScore's design. For example:
- To prevent an empty stave being hidden by the "hide empty staves feature".
- To introduce accidentals to modify the sound of a trill or other ornament during playback.
(Let me know if you can think of any more reasons for using dummy notes!)
So if dummy notes are only there to cheat MuseScore, is there any point in including them in MusicXML export?
I can think of the following reasons why including them in MusicXML export is a bad idea:
- Velocity and playback information is not exported (could it be?) so the dummy notes will be audible to users of other programs.
- The presence of invisible notes could affect score layout in other programs.
- If the MusicXML is parsed for research purposes (e.g. using Music21) the dummy notes will be included in score statistics, skewing the results of the analysis.
The reason I created this discussion is I am trying to decide whether to allow dummy notes in OpenScore submissions. There are currently no other ways around the issues I mentioned with "hide empty staves" and playback of accidentals on ornaments, but I have to balance this with the impact on those using the MusicXML files.
Comments
'To prevent an empty stave being hidden by the "hide empty staves feature'
It would be possible to get the same result (do not hide) if instead of a note the stave contained another element (eg System/Stave Text)?
In reply to 'To prevent an empty stave… by Shoichi
Unfortunately not. At least, text alone won't do it. There might be some other element that does.
FWIW, I have occasionally suggested we add a special new element just for this purpose. I've also consider making it a property on a line break. Definitely something to consider for 3.0
I would say that dummy notes should not be exported to MusicXML since they are not necessary for proper notation in any situation I can think of.
As far as the invisible notes are concerned, I almost never use dummy notes, but rather use invisible notes to make playback proper while silencing voice 1 notes to avoid awful playback. I would say that invisible notes should not be allowed in open score due to the uses of the scores. They will cause problems for non MuseScore users.
My vote is to not use workaround for OpenScore at all (especially for trill playback...)
In reply to My vote is to not use… by [DELETED] 5
I agree it would be best to advise people not to use workarounds like this for OpenScore. It's more important the score make semantic sense than to have every last detail of playback correct, and layout issues are usually better solved other ways. BTW, if people are really concerned about playback and want to tweak things further, I recommend an invisible staff over invisible notes.
In reply to My vote is to not use… by [DELETED] 5
I would agree that workarounds are best avoided, but the hide empty staves problem sometimes cannot be avoided without disabling it entirely and causes a huge amount of wasted space. So if we are to allow dummy notes in this situation then we need to have a way to prevent the dummy notes causing problems in MusicXML, and if we can do that then maybe we can allow dummy notes in all situations.
Thanks for the feedback. The reasons I gave for using dummy notes (accidentals on ornaments & not wanting to hide a certain stave) should be relatively easy to fix properly in the code. (The solution might even be portable; MusicXML supports accidentals on ornaments.)
I guess what I am really asking is:
In reply to Thanks for the feedback. The… by shoogle
It's hard to envision all possibilities, but my gut feel is that ignoring dummy notes on export is reasonable. If they neither display nor sound, there really isn't any relevant semantic info to include. Unelss they have things attached to them, I guess - be sure they don't have text (actually, segment annotation on same track), or if they do, that you continue to export that.
BTW, the other case I've seen for dummy notes is for spacing, such as to fill a measure with dummy sixteenths to get spacing on "real" notes that is directly proportional to duration - so a half really takes twice as much space as a quarter, etc.
In reply to Thanks for the feedback. The… by shoogle
Another use I've thought of is ties or slurs which are left hanging (e.g. across a volta repeat) and so are attached to a dummy note (or dummy grace note) at one end.
In reply to Another use I've thought of… by shoogle
I don't know how you would classify this, but I use an invisible 8va line to make harp harmonics sound the right pitch in my own scores.
In reply to I don't know how you would… by mike320
Hardly a dummy note, is it?
In reply to Hardly a dummy note, is it? by Jojo-Schmitz
No, but it could cause difficulties for some users of the xml created by open source.
In reply to No, but it could cause… by mike320
As long as MuseScore exports valid MusicXML I'm not too bothered if other programs can't read it - that's their problem and their job to fix it. The problem with dummy notes is that MuseScore doesn't export the fact that they should be silent, so in this case it is our problem to fix.
We have a choice of how to fix the dummy notes: make them silent or don't export them at all.
In reply to As long as MuseScore exports… by shoogle
When you say make them silent, do you mean turn them into rests? I'm not sure of your native language.
In my example of invisible 8va lines, the note has the flageolet circle visible to indicate how to play it, the invisible 8va is only to accommodate playback. This would would be something WE would need to account for. As far as dummy notes are concerned, if they are being converted to rest or somehow still exist but do not play in xml, I think they would clutter a score someone was trying to read if they cannot be marked invisible in xml (which I suspect is the case).
My understanding of the purpose of this project is initially to make xml versions available to everyone so they can import them into the program of their choice. In this case, anything superfluous should not be permitted in an OpenScore project. I'm sure the the ultimate goal is to show off the capabilities of MuseScore and hopefully get people to switch to it. I don't know that allowing dummy notes and the like to be included in OpenScore projects would contribute to this end.
On the subject of superfluous items, the score I did for the 1812 overture has a better fix than I initially used. I put the flats not included in the 0 key signature in brackets to make them play correctly. I have known for a very long time that you can hide the key signature on a staff, but it did not occur to me to use this in my transcription. This, in my opinion, add superfluous accidentals to the score which should be fixed.
In reply to As long as MuseScore exports… by shoogle
notes:
1a. eg: We use, both silent and invisible notes to link the previous note to the second (or later), for voltas, or D.C.'s or rarely Codas (with tie or slur). If this is specific to MuseScore, it doesn't make sense to export it. if MusicXML does this automatically, then we don't need to do that.
Result:
In general: it seems necessary to export all elements.
Apart from the reasons mentioned above, there is no point in using a note that is both silent and invisible, does not contain any sub-elements (eg:text), and is not linked to another note (with tie or slur).
Thanks again for the feedback. Regarding OpenScore specifically, I have come to the conclusion that:
Dummy notes conflict with OpenScore's goals of providing accurate and valid notation. However, as Marc and I managed to come up with 4 situations in which dummy notes can be pretty useful, I don't think we can rule them out altogether. They might be very valuable for projects with different goals to OpenScore's.
Therefore, I think that the best short term solution is to continue exporting dummy notes to MusicXML, but to make them silent so that the behave like they do in MuseScore. (Apparently it should be possible to make them silent in MusicXML by using the <cue/> element.) Of course, the ideal long term goal is to find a solution that does not involve dummy notes, but as this may not be possible in all cases (I'm thinking of proportional spacing in particular), perhaps they are a necessary evil.