MusicXml - working with the exported file and chords
First of all, thank you for all the great work you have done here.
Thank you especially to Marc for the work on this aspect of MusicXml exports.
Ok, here is the context of my question.
I have created a document with a simple series of chords to be able to see how they are exported in MusicXml.
All is OK until I get to the last two.
They are : C7+4 and C6/9
The manner in which they are exported is the same. That is that the "+4" and "/9" are treated in the same manner, within a degree node.
In the first case, I am told that this is an added sharpened 4th.
This is exactly the same as when I declare the chord as C7#4.
So, as my chord construction theory is not as good as it should be, is a C7+4 the same as a C7#4 ?
In the second case, I am told that this is an added 9th.
Should I be interpreting this, generically, that when the chord already as a 'number' as the first alteration, ie: C6, then if the first degree is unaltered (neither sharp or flat), it should be displayed with a slash ?
Hope that my question is clear here and that you will have the time to help me understand.
I am attaching my test file to make things quicker.
Attachment | Size |
---|---|
Chord tests MuseScore v2-0-1.mscz | 5.74 KB |
Comments
Yes, the usual interpretation of "+" is a synonym for "#". Which is to say, it means, if that degree was already present, raise it; if not already present, add (and raise) it.
As for C6/9, that particular usage of "/" is pretty much unique to this chord. The more general way on *might* write a chord like that - with two unaltered notes added to a triad with no seventh - would be C(6,9). But we're getting into very personalized territory - even more so than is usual for chord symbols, which is already a lot. So I would advise you to special-case C6/9 to display that way because it's pretty standard (if by no means universal), but otherwise, when you see additions that don't have alterations, just list them with commas, and parens if the MusicXML says to. There basically is no right/wrong answer here.
In reply to Yes, the usual interpretation by Marc Sabatella
Great, thanks Marc, that really helps.
Whilst I've got your attention, can you tell me if the export of parenthasised chords symbols works ?
If so, how am I supposed to put the parenthesis around the chord symbol ?
If I put them in the text - eg (C#m), the MuseScore parser understands, but they are not exported.
In reply to Great, thanks Marc, that by Simon Giddings
Correct. Given that there is no direct support for parenthesized *sequences* in MusicXML, which are at least as common as individual chords, it didn't make sense to make to do a partial job now and then rewrite it later when the MusicXML spec is updated. I plan to do it then. So for now, there is no way to do this except to add the parentheses as separate elements.
In reply to Correct. Given that there is by Marc Sabatella
Ok, I understand your position.
It will just make work more difficult having to do a work around, given that a lot of modern worship music have, at the same time, two rows of chords. The first for playing normally and the second (in parenthesis) for when using a capo.
I could have simply given the chord a colour, however this is not exported either.
All I have found that I can do is to use a non-recognised character at the beginning of the chord - which means that MuseScore does not parse it, and then parse it myself.
Don't know where MakeMusic is with the next version of the MusicXML spec, but I suspect that the bracketing of a sequence of chords will take some time before it appears.
Frustrating
In reply to Ok, I understand your by Simon Giddings
Capo support is available, style/general/chord symbols
In reply to Capo support is available, by Jojo-Schmitz
Yep, I saw this.
However, it is not at all exported in the MusicXml file.
In reply to Ok, I understand your by Simon Giddings
Hmm, you never said you were interested in capo specifically. That's not the usual case for parentheses; it's not implemented internally the same way at all. I thought you were talking about ordinary parenthesized chords used to indicate optional reharmonizations.
If MusicXML has a way of representing capo information, that would presumably be possible to export. And if not, I'd recommend handling this the same way MuseScore does internally. The capo chords are not stored as separate parenthesized chords at all. They are generated on the fly based on the capo setting in the Style. You could/should do the same. Have a setting for capo in your app, and automatically generate the capo chords on the fly from that.
In reply to Hmm, you never said you were by Marc Sabatella
Ok, Ok, I admit it. It was a bit of a lame excuse to try to encourage the implementation.
I have a number of scores which have, as you said, optional chords needing parenthesis around them. I'll have to go with my workaround solution.
Incidentally, I already have a capo position and chord transposition generator in my app.
I'll stop bugging you with this, then !
In reply to Ok, Ok, I admit it. It was a by Simon Giddings
No need to apologize! I hadn't thought of MusicXML export for capo chords, and probably there should be a way - but I'm not sure what it is. If MusicXML doesn't have any explicit tags for this, it perhaps should. Worth bringing up. But sure, in a future version of MuseScore, it would be very easy to automatically export them, as either whatever MusicXML really wants for this, or just as plain individually-parenthesized chords.
Still, the normal use case for parentheses - where you enter both the chord itself and the parentheses manually - isn't currently supported by MusicXML. So I think just entering the parentheses yourself as text elements is probably the way to go.
In reply to Ok, I understand your by Simon Giddings
Importing / exporting chord colors from / to MusicXML is trivial. If that would help, I would be willing to implement that on short notice.
MusicXML does support capo, but only as a staff property. Supporting this in MuseScore has been discussed long time ago. I would have to investigate ...
In reply to Importing / exporting chord by Leon Vinken
That would be great, Leon.
Especially if it was included in, say, version 2.0.2 ? ? ? ?
In reply to Importing / exporting chord by Leon Vinken
Leon: what does "chord colors" refer to in this context?
Right now, capo information for chord symbols is handled through a style option - the play transposition feature is not used.
In reply to Leon: what does "chord by Marc Sabatella
Hi Marc,
Giving a colour to a chord is the same as giving a colour to a notehead, for me at least.
In my case, I used notehead colours to workaround information not exported into the MusicXML file when using MuseScore 1.3 (such as parenthesis).
Being able to assign a colour to a chord symbol will permit the same kind of thing, whilst not taking the risk of having MusicXml output which would not work when importing into other "standard" programs.
In reply to Hi Marc, Giving a colour to a by Simon Giddings
Marc,
you can use the inspector to assign a color to many (but not all) symbols in a score. The color information is saved in the .mscx file and could be exported to MusicXML, which supports a "color" attribute for many (all ?) elements.
Currently MuseScore supports color only for MusicXML glissando, slide and note head. It would be trivial to extend color support to the harmony element. This is on my TODO list, but not very high, so it has not happened yet. Given enough popular demand, I could easily do it. Ideally color information should be exported / imported for all elements where both MuseScore and MusicXML support it, but that is more work.
In reply to Leon: what does "chord by Marc Sabatella
Yes, thanks, I get it now. I had missed where the original suggestion of using color to mark chords came up, so I was quite confused when it appeared to be mentioned as a possible solution to capo :-)
In reply to Yes, thanks, I get it now. I by Marc Sabatella
As of pull request #2060, exporting chord color is in.
In reply to As of pull request #2060, by Leon Vinken
Great, thanks Leon.
Just need to wait for it to come in an official release ....
In reply to Great, thanks Leon. Just need by Simon Giddings
Will be in 2.0.2.