9

如何使用 music21 模块在 Python 中保存音频输出?我已阅读所述模块的整个 [用户指南]( http://music21.readthedocs.org/en/latest/usersGuide/index.html],但我找不到任何有关将输出保存为音频文件的信息无需任何附加软件(例如 MIDI)即可被 windows 识别。

4

3 回答 3

15

如果s是您的Stream,只需致电:

fp = s.write('midi', fp='pathToWhereYouWantToWriteIt')

或立即听到

s.show('midi')

于 2015-12-20T19:05:44.663 回答
5

在本用户指南第 8 章的某处,有一些关于以多种格式打开和保存文件的重要信息: http ://web.mit.edu/music21/doc/usersGuide/usersGuide_08_installingMusicXML.html

如果您自己制作了名为“stream1”的音乐,您可以轻松地将其保存为 MIDI 文件,如下所示:

stream1.write("midi", "blah.mid")

我对此仍然很陌生,但我认为这比打开文件等更简单。

于 2017-03-13T11:51:53.313 回答
2

有一个MidiFile对象,它知道如何编写一个 midi 文件

但是关于如何使用它的文档是不存在的。

但是,在它的源代码中有一个testBasicExport测试,可能这是一个好的开始,它做了这样的事情:

mt = MidiTrack(1)

# duration, pitch, velocity
data = [[1024, 60, 90], [1024, 50, 70], [1024, 51, 120],[1024, 62, 80], ]

# Omit this part here, but full code in the links above
populateTrackFromData(mt, data)

mf = MidiFile()
mf.ticksPerQuarterNote = 1024 # cannot use: 10080
mf.tracks.append(mt)

mf.open('/src/music21/music21/midi/out.mid', 'wb')
mf.write()
mf.close()
于 2015-12-20T17:20:30.247 回答