为什么不用mido库
时间: 2023-07-06 21:17:06 浏览: 59
您提到的mido库也是一个用于处理MIDI文件的库,使用它同样可以生成MIDI音符。我之前使用的midiutil库是另一个常用的MIDI处理库,两者的功能类似,选择哪个库可以根据您的个人喜好和需求来决定。
mido库提供的接口更加简单易用,而且支持更多的MIDI文件操作,如读取和解析MIDI文件、发送MIDI消息到MIDI设备等。如果您需要更多的MIDI文件操作或者觉得mido库更适合您的需求,那么您可以使用它来生成MIDI音符。
以下是使用mido库生成一个C4音符的示例代码:
```python
import mido
# 创建MIDI文件对象
mid = mido.MidiFile()
# 添加MIDI轨道
track = mido.MidiTrack()
mid.tracks.append(track)
# 设置MIDI轨道的乐器和时间分辨率
track.append(mido.Message("program_change", program=0, time=0))
mid.ticks_per_beat = 480
# 添加C4音符
note_on = mido.Message("note_on", note=60, velocity=127, time=0)
note_off = mido.Message("note_off", note=60, velocity=127, time=480)
track.append(note_on)
track.append(note_off)
# 保存MIDI文件
mid.save("sample.mid")
```
这段代码使用了mido库来创建MIDI文件对象,并添加了一个C4音符。您可以根据需要修改音符的参数,然后将生成的MIDI文件保存到本地。