在 MusicXML 中,可以有direction
带有<sound>
标签的标签,这些标签设置 BPM。例如,
<direction placement="above">
<direction-type>
<words>Molto vivace</words>
</direction-type>
<staff>1</staff>
<sound tempo="260"/>
</direction>
是否有可能通过它们在小节中的偏移量来定位速度标记?
编辑:我使用了从 MuseScore 下载的作品。我目前找到了一个需要在解析 XML 文件之前对其进行预处理的解决方案。我使用的 XML 文件<direction>
包含具有<sound>
元素但没有元素的<metronome>
元素。所以我所做的是在每个<direction>
具有元素的<sound>
元素之后,我添加了一个<direction>
具有元素的新元素<metronome>
,这似乎是 music21 实际解析<sound>
元素的唯一方法,然后它可以与Stream.metronomeMarkBoundaries
. 例子:
<direction placement="above">
<direction-type>
<metronome parentheses="no" default-y="40.00" relative-x="-39.33" relative-y="3.81">
<beat-unit>half</beat-unit>
<per-minute>128</per-minute>
</metronome>
</direction-type>
<staff>1</staff>
<sound tempo="256"/>
</direction>