2

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

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

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

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

有没有办法同时处理多个文件?

4

1 回答 1

3
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。我认为在继续之前,您需要多阅读一下 music21用户指南

于 2014-04-07T18:41:07.627 回答