微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

python MIDO问题-源文件中的多个通道合并到目标文件中的一个

如何解决python MIDO问题-源文件中的多个通道合并到目标文件中的一个

我正在尝试截取现有midi文件的一部分,并将该代码段另存为新的midi文件

问题是带有新部分的新文件将所有频道消息合并到一个轨道,但是我想像原始文件一样将它们分隔开

文件 image.png

目标文件 image.png

下面是供您参考的脚本

import mido

mid = mido.MidiFile('SoftRock1.T105.mid',clip=True)
bk = mido.MidiFile()
track2 = mido.MidiTrack()
bk.tracks.append(track2)

flag = "false"

print(mid)

for track in mid.tracks:
    print(track)
    
for msg in mid.tracks[0]:
    if msg.is_Meta:
        table = msg.dict()
        if table.get('text') == "Intro A":
            print(table)
            flag = "true"
        if table.get('text') == "Ending A":
            print(table)
            flag = "false"

    if flag == "true":
        track2.append(msg)

bk.save('bkstyle.mid')

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。