音乐编码之道(二十)|music21音乐分析利器导出链Derivation Chain
假设你有一个分数,其组织方式类似于以下代码:
for s in sTransposed.derivation.chain():
makeLouder(s)
sExcerpt.show()
它的分数层次结构如下图所示:
我们已经看到,通过在分数上使用music21
的迭代方式,只会得到最高级的对象,即for n in score: print n
对象和两个Metadata
对象。内部对象,如小节、调号、音符等将不可用。获取所有这些对象的最简单方法是使用Part
方法。在该分数上调用它将改变表示形式,只有非流元素(粉色椭圆形)保留在分数中:
这应该是用户指南中之前章节的复习。本节解释了原始Stream.flatten()
对象与我们称之为s
表示的stream.Score
之间的关系,我们称之为flattened