-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Clean up accidentals #27
Comments
One option is to strip all |
Yes, I keep the information in the MusicXML that is converted to Humdrum. The **kern
*k[f#]
=
1fn
=
1f#
*- The second measure is expected to have a cautionary accidental on the F, and removing it would cause readability problems for performance. Default modern interpretation of this note is that it should be F# (and in kern data notice that it is encoded as an
When converting from Finale, there is no concept of a courtesy/cautionary accidental, so I keep all explicit accidental displays (by prefixing with I would recommend keeping cautionary/courtesy accidentals and only remove I do have a VHV filter (humlib command line tool) called https://doc.verovio.humdrum.org/filter/autoaccid (or you can check it out and see if it does what you want and/or we could figure out how to add an option to do what you want). I should also add a feature to VHV to highlight cautionary accidentals, which you can then decide if you want to keep or not. In general if you are doing a diplomatic edition, cautionary accidentals should be kept, and in general they facilitate performance since some cautionary accidentals are required (as above), and some would be recommended to confirm that there is not a typo in the score (functioning as a sic for the accidental). When I convert from Humdrum to MEI, I mark all cautionary accidentals (following modern accidental display conventions, which are not always the same for older music). For example the following MEI data from the second example at the top: Click to view MEI data for second example<?xml version="1.0" encoding="UTF-8"?>
<?xml-model href="https://music-encoding.org/schema/5.0/mei-all.rng" type="application/xml" schematypens="http://relaxng.org/ns/structure/1.0"?>
<?xml-model href="https://music-encoding.org/schema/5.0/mei-all.rng" type="application/xml" schematypens="http://purl.oclc.org/dsdl/schematron"?>
<mei xmlns="http://www.music-encoding.org/ns/mei" meiversion="5.0">
<meiHead>
<fileDesc>
<titleStmt>
<title />
</titleStmt>
<pubStmt>
<unpub>This MEI file was created by Verovio's Humdrum converter. When published, this unpub element should be removed, and the enclosing pubStmt element should be properly filled out.</unpub>
</pubStmt>
</fileDesc>
<encodingDesc>
<appInfo>
<application isodate="2024-04-09T10:00:31" version="4.2.0-dev-84f99b0-dirty">
<name>Verovio</name>
<p>Transcoded from Humdrum</p>
</application>
</appInfo>
</encodingDesc>
<extMeta>
<frames xmlns="http://www.humdrum.org/ns/humxml" />
</extMeta>
</meiHead>
<music decls="#work1_encoded">
<body>
<mdiv xml:id="mr7gzip">
<score xml:id="s28vxwa">
<scoreDef xml:id="s1csmqmu" midi.bpm="400.000000">
<staffGrp xml:id="s1g0jemm">
<staffDef xml:id="staffdef-L1F1" n="1" lines="5">
<clef xml:id="cw0r7zm" shape="G" line="2" />
<keySig xml:id="keysig-L2F1" sig="1s" />
</staffDef>
</staffGrp>
</scoreDef>
<section xml:id="section-L1F1">
<measure xml:id="measure-L1">
<staff xml:id="staff-L1F1" n="1">
<layer xml:id="layer-L1F1N1" n="1">
<note xml:id="note-L4F1" dur="1" oct="4" pname="f" accid="n" />
</layer>
</staff>
</measure>
<measure xml:id="measure-L5" right="invis">
<staff xml:id="staff-L5F1N1" n="1">
<layer xml:id="layer-L5F1N1" n="1">
<note xml:id="note-L6F1" dur="1" oct="4" pname="f">
<accid xml:id="accid-L6F1" accid="s" func="caution" />
</note>
</layer>
</staff>
</measure>
</section>
</score>
</mdiv>
</body>
</music>
</mei> The accidental for the second note in the example:
The Currently the conversion to SVG graphical notation drops this, and I need to add |
Yes, I want to preserve the cautionary accidentals and conduct a diplomatic encoding. This means all accidentals that are in the reference edition should be explicitly encoded in the kern file and render correctly in VHV. The problem that I have encountered is that there are many I will add some pseudocode later that clarifies the procedure I have in mind. |
|
Okay. The grace note problem is something that can be scripted. I will deal with it at the very end when I deal with accidentals. |
It would be good at some point to clean up unnecessary
n
andX
on accidentals in the files; there are many, probably artifacts of encoding in Finale.The text was updated successfully, but these errors were encountered: