嗨,我有一些问题找到关于此的正确信息,如果有人能指出我正确的方向,我会很高兴.你如何编码midifile?例如,我如何编写一段播放随机音调1秒钟的片段.基本上我需要做的是将不同的midi melodys表示为某种类型的向量?我怎样才能做到这一点..
标准midi文件使用什么样的编码?
以下是提出这个问题的原因:
with open(path + "/OneChance1.mid") as f:
for line in f.readline():
print(line)
Run Code Online (Sandbox Code Playgroud)
在这里,我只是想读一个midi文件来搜索其内容.然后我收到此错误消息:| UnicodeDecodeError:'charmap'编解码器无法解码153位的字节0x90:字符映射到|
如果我像这样使用open()的第二个参数:UnicodeDecodeError: 'charmap' codec can't decode byte 0x90 in position 153: character maps to <undefined>然后我收到这个错误:| UnicodeDecodeError:'utf-8'编解码器无法解码位置13中的字节0x80:无效的起始字节|
如果我将编码参数更改为ascii,我会收到有关序数超出范围的另一个错误.最后我尝试了utf-16,它说文件没有以BOM开头(这让我因某种原因而笑).此外,如果我忽略错误,我会得到与我期望的数据类似的字符.我的期望是基于这个来源:http://www.sonicspot.com/guide/midifiles.html
无论如何,有谁知道midi文件使用什么样的编码?我的研究在这方面做得很短,所以我认为值得询问.或者也许有人可以指出其他一些可能性或错误?
多谢你们.