我有一个简单的脚本,它使用 music21 来处理 MIDI 文件中的音符:
EIdException
有没有一种方法可以使用平坦的分数获得音符的发声/midi 程序?任何指针将不胜感激!
答案 0 :(得分:1)
MIDI 通道和程序存储在 Instrument
实例中,因此请使用 getContextByClass(instrument.Instrument)
在流中查找最近的乐器,然后访问其 .midiProgram。
小心:
.midiChannel
和 .midiProgram
是 0 索引的,因此 MIDI 通道 10 在 music21 等中将是 9,(我们正在讨论在下一个版本中更改此行为)pip install git+https://github.com/cuthbertLab/music21
.flat
会杀了你。如果您遵循我的建议,您将获得每条轨道上的最后一件乐器。 90% 的人在做 .flat
时实际上想要 .recurse()
。