识别不同流中的同时注释

2024-05-28 20:46:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我想确定什么时候两个不同部分/乐器的音符应该同时演奏。你知道吗

https://cdn.shopify.com/s/files/1/1280/7719/products/Air_on_the_G_String_Preview.jpg?v=1464908099

以上面的乐谱为例。在第三个音阶中,高音谱号的重音A和低音谱号的重音B应该同时演奏。如何解析music21流并找到所有这些实例?你知道吗

我知道,一首曲子的每一个“部分”都可以按音符的顺序进行解析:

numParts = len(piece.parts)
for i in range(numParts):
    part = piece.parts[i].flat.notesAndFlats
    for note in part:
        #will access each note or chord in the part sequentially

但这不允许我确定第一部分中的音符何时与第二部分中的音符同时开始。你知道吗


Tags: inforpiecenote谱号parts音符part
1条回答
网友
1楼 · 发布于 2024-05-28 20:46:06

遍历每个部分。但要考虑到有很多音符是不匹配的,而且每个音符的长度通常都不一样。你知道吗

oiter = stream.iterator.OffsetIterator(parts[0])
for groupedElements in oiter:
    print(groupedElements, groupedElements[0].quarterLength, groupedElements[0].offset)

稍后检查这些零件是否具有相同的偏移量。如果有,那么这些音符会同时演奏。你知道吗

相关问题 更多 >

    热门问题