humdrum-tools / verovio-humdrum-viewer

Verovio Humdrum Viewer
http://verovio.humdrum.org
37 stars 9 forks source link

barline fermatas #603

Open craigsapp opened 3 years ago

craigsapp commented 3 years ago

Allow fermatas on barlines (i.e., ignore barines when checking if they are the same).

Screen Shot 2021-06-26 at 1 54 00 PM
**kern  **kern
*M4/4   *M4/4
=1  =1
1C  1cc
==  ==;
*-  *-

Probably also allow for fermatas above/below the system, with the fermata on the bottom staff turned down automatically:

Screen Shot 2021-06-26 at 1 57 22 PM

Or allow for ;; on the top staff to mean the same thing:

Screen Shot 2021-06-26 at 1 57 59 PM

Or consider part extraction, where ;; would be present on all staves to display fermata above/below the system. This would be dependent on the barring style as well.

craigsapp commented 3 years ago

Commit https://github.com/rism-digital/verovio/commit/cfdb1854b5201810c836fad9de2b4316513b5bfd ignored fermatas when identifying if all barlines are the same style.

This allow for a better rendering:

**kern  **kern
*M4/4   *M4/4
=1  =1
1C  1cc
==  ==;
*-  *-
Screen Shot 2021-07-05 at 1 35 26 AM

MEI conversion:

<?xml version="1.0" encoding="UTF-8"?>
<?xml-model href="https://music-encoding.org/schema/4.0.0/mei-all.rng" type="application/xml" schematypens="http://relaxng.org/ns/structure/1.0"?>
<?xml-model href="https://music-encoding.org/schema/4.0.0/mei-all.rng" type="application/xml" schematypens="http://purl.oclc.org/dsdl/schematron"?>
<mei xmlns="http://www.music-encoding.org/ns/mei" meiversion="4.0.0">
 <meiHead>
  <fileDesc>
   <titleStmt>
    <title />
   </titleStmt>
   <pubStmt />
  </fileDesc>
  <encodingDesc>
   <appInfo>
    <application isodate="2021-07-05T01:35:31" version="3.5.0-dev-ebdb3d4">
     <name>Verovio</name>
     <p>Transcoded from Humdrum</p>
    </application>
   </appInfo>
  </encodingDesc>
  <workList>
   <work>
    <title />
   </work>
  </workList>
 </meiHead>
 <music>
  <body>
   <mdiv xml:id="mdiv-0000001017792675">
    <score xml:id="score-0000001334240370">
     <scoreDef xml:id="scoredef-0000001204246230" midi.bpm="400">
      <staffGrp xml:id="staffgrp-0000002028467603" bar.thru="true" symbol="brace">
       <staffDef xml:id="staffdef-0000000260102661" n="1" lines="5">
        <clef xml:id="clef-0000000310362858" shape="G" line="2" />
        <meterSig xml:id="metersig-L2F2" count="4" unit="4" />
       </staffDef>
       <staffDef xml:id="staffdef-0000001853518021" n="2" lines="5">
        <clef xml:id="clef-0000001163594805" shape="F" line="4" />
        <meterSig xml:id="metersig-L2F1" count="4" unit="4" />
       </staffDef>
      </staffGrp>
     </scoreDef>
     <section xml:id="section-L1F1">
      <measure xml:id="measure-L1" right="end" n="1">
       <staff xml:id="staff-0000001871264587" n="1">
        <layer xml:id="layer-L1F2N1" n="1">
         <note xml:id="note-L4F2" dur="1" oct="5" pname="c" accid.ges="n" />
        </layer>
       </staff>
       <staff xml:id="staff-0000000445903394" n="2">
        <layer xml:id="layer-L1F1N1" n="1">
         <note xml:id="note-L4F1" dur="1" oct="3" pname="c" accid.ges="n" />
        </layer>
       </staff>
       <fermata xml:id="fermata-L5F2" staff="1" tstamp="5.000000" place="above" />
      </measure>
     </section>
    </score>
   </mdiv>
  </body>
 </music>
</mei>