我正在尝试解析一个列表,列出使用java和jSoup的musicXML文件中每个分区正在播放哪些音高类。输出应如下所示(每个分区一行):
A C E
A C
A C D
(for instance)
我可以根据音符持续时间填充这个数组,给定作品中的分区数。但我似乎找不到笔记的开始时间。有没有一种简单的方法来解析它?
musicXML规范有一个持续时间和一个音高(我可以解析),但我对音符的开始时间感到困惑。
MusicXML有一个时间线,程序需要跟踪确切的开始时间。注意元素将其向前移动,除非存在和弦子元素。前进和备份元素也可以在度量值内向前或向后移动它。如果您需要在全部分级别精确启动时间,您的程序也需要跟踪这些时间。MIDI 的结构有些相似。您可能会发现 MusicXML 教程对 http://www.musicxml.com/tutorial/很有帮助。
如果包含在注释中,我相信它与上一个注释同时开始,请参阅。
后退和前进元素跟踪时间。
我开发的解析器可以在这里找到。有兴趣的人可以免费使用代码/库。