Python 如何在midi文件中添加时间签名?
我试图在Python中向MIDI文件添加时间签名 我曾尝试使用MIDO和MIDI库来实现这一点,但不知道这是否可行,或者确切的代码需要是什么 添加时间签名的Python代码应该是什么样子 当前,midi文件看起来像:Python 如何在midi文件中添加时间签名?,python,midi,Python,Midi,我试图在Python中向MIDI文件添加时间签名 我曾尝试使用MIDO和MIDI库来实现这一点,但不知道这是否可行,或者确切的代码需要是什么 添加时间签名的Python代码应该是什么样子 当前,midi文件看起来像: ... midi.Pattern(format=0, resolution=96, tracks=\ [midi.Track(\ [midi.ProgramChangeEvent(tick=0, channel=0, data=[0]), midi.NoteOnEvent
...
midi.Pattern(format=0, resolution=96, tracks=\
[midi.Track(\
[midi.ProgramChangeEvent(tick=0, channel=0, data=[0]),
midi.NoteOnEvent(tick=0, channel=0, data=[41, 90]),
midi.NoteOnEvent(tick=440, channel=0, data=[41, 0]),
midi.NoteOffEvent(tick=0, channel=0, data=[41, 90]),
....
我需要把它改成:
....
midi.Pattern(format=0, resolution=96, tracks=\
[midi.Track(\
[midi.TimeSignatureEvent(tick=0, data=[4, 2, 36, 8]),
midi.TimeSignatureEvent(tick=0, data=[4, 2, 36, 8]),
midi.ProgramChangeEvent(tick=0, channel=0, data=[0]),
midi.NoteOnEvent(tick=0, channel=0, data=[41, 90]),
midi.NoteOnEvent(tick=440, channel=0, data=[41, 0]),
midi.NoteOffEvent(tick=0, channel=0, data=[41, 90]),
...
查看这个名为的库,它可能会对您有所帮助 该页面上的文档包括一个名为
setTimeSignature(timeSignature)
的函数。其说明如下:
设置节拍器的时间签名(列表,例如,[4,4]表示4/4)
您可以使用传入所需的时间签名作为列表。显示了如何创建元消息:
MetaMessage('time_signature', numerator=4, denominator=4)
您知道如何将其他邮件添加到文件中吗?知道。例如,下面的工作可以添加程序更改:track.append(Message('program_change',program=0,time=0)),我只需要从MIDO导入元消息,然后它就可以工作了。谢谢