我正在使用Mido
python,将midi文件解析为<start_time, duration, program, pitch>
元组并遇到了一些问题。
我解析的一些文件有多个note_on
,导致同一音高的音符和同一程序被多次打开。
某些文件包含多个note_off
导致尝试关闭由于之前关闭而不再打开的音符(假设同一程序和相同音高只能打开一个音符)。
有些曲目在曲目的开头没有一个program_change
(或者更糟糕的是,甚至在整个曲目中都没有一个)。
某些文件有多个包含set_tempo
消息的轨道。
在每种情况下我应该怎么做才能确保我得到正确的解释?