我正在尝试使用python(2.7)包mingus(0.4.2.3,最新在pypi中)解析musicxml文档并将其转换为midi输出。我从源代码中遇到了运行midi_file_out.py的障碍:

if __name__ == '__main__':
from mingus.containers.NoteContainer import NoteContainer
from mingus.containers.Bar import Bar
from mingus.containers.Track import Track
from mingus.containers.Instrument import MidiInstrument
b = Bar()
b2 = Bar('Ab', (3, 4))
n = NoteContainer(['A', 'C', 'E'])
t = Track()
b + n
b + []
b + n
b + n
b2 + n
b2 + n
b2 + []
t + b
t + b
m = MidiInstrument()
m.instrument_nr = 13
t.instrument = m
t.name = 'Track Name Test'
write_NoteContainer('test.mid', n)
write_Bar('test2.mid', b)
write_Bar('test3.mid', b, 200)
write_Bar('test4.mid', b2, 200, 2)
write_Track('test5.mid', t, 120)


生成了五个.mid文件,但是当我播放它们时,只有test5.mid会发出声音。其他四个有持续时间,会播放,但不会产生声音。操作系统是Ubuntu 12.0.4.1。想让所有文件都播放正常吗?我还缺少其他包裹吗?

最佳答案

似乎问题出在我的媒体播放器上,而不是代码本身。使用胆小的文件可以完美播放。我使用的是图腾,似乎缺少一些用于Midi播放的插件/乐器。

Solution from askubuntu.com

09-25 21:24