显示来自带有music21的Mid文件的midi音高数字

时间:2014-03-24 14:22:53

标签: midi music21

我正在使用music21为一堆midi文件提取midi音高编号(按顺序)。

我一直在阅读文档,我可以像这样加载一个文件:

from music21 import *
sBach = corpus.parse('bach/bwv7.7')

现在我如何显示midi数字序列?我确信这是可能的,但我无法在文档中找到该功能。

有没有办法同时为多个文件执行此操作?

1 个答案:

答案 0 :(得分:2)

from music21 import *
sBach = corpus.parse('bach/bwv7.7')
for p in sBach.parts:
    print("Part: ", p.id)
    for n in p.flat.notes:
        print(n.pitch.midi)

请注意,.notes包含Chord个对象,这些对象不具有.pitch属性。因此,对于复杂的分数,您可能需要将音符与音符分开或迭代p.pitches。我想在继续之前你会想要更多地阅读音乐21 User's Guide