gpt4 book ai didi

python - 如何在 MIDI 文件中添加拍号?

转载 作者:太空宇宙 更新时间:2023-11-03 21:06:58 27 4
gpt4 key购买 nike

我正在尝试在 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(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]),

...

最佳答案

查看这个名为 metronome 的库这可能会帮助你。

该页面上的文档包含一个名为 setTimeSignature(timeSignature) 的函数。其描述为:

Set metronome’s time signature (a list, e.g., [4, 4] meaning 4/4).

您可以在所需的拍号中使用 pass 作为列表。

关于python - 如何在 MIDI 文件中添加拍号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55334338/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com