修复了部分midi文件无法读取的错误

This commit is contained in:
2022-02-01 18:20:14 +08:00
parent 9093a66639
commit 882ce96b90
13 changed files with 34 additions and 50 deletions

Binary file not shown.

View File

@ -6,8 +6,8 @@ def mt2gt(mt, tpb_a, bpm_a):
return round(mt / tpb_a / bpm_a * 60)
def get(mf):
mid = mido.MidiFile(mf)
def get(mid:mido.MidiFile):
# mid = mido.MidiFile(mf)
long = mid.length
tpb = mid.ticks_per_beat
bpm = 20
@ -45,13 +45,13 @@ def get(mf):
return list(last_dic.keys())[0]
def compute(mf):
mid = mido.MidiFile(mf)
def compute(mid:mido.MidiFile):
answer = 60000000/mid.ticks_per_beat
print(answer)
return answer
if __name__ == '__main__':
get(r"C:\Users\lc\Documents\MuseScore3\乐谱\乐谱\Bad style - Time back.mid")
compute(r"C:\Users\lc\Documents\MuseScore3\乐谱\乐谱\Bad style - Time back.mid")
mid = mido.MidiFile(r"C:\Users\lc\Documents\MuseScore3\乐谱\乐谱\Bad style - Time back.mid")
get(mid)
compute(mid)

View File

@ -40,11 +40,11 @@ def midiNewReader(midfile: str):
isPercussion = False
try:
mid = mido.MidiFile(midfile)
except FileNotFoundError:
except Exception:
log("找不到文件或无法读取文件" + midfile)
return False
tpb = mid.ticks_per_beat
bpm = get(midfile)
bpm = get(mid)
# 解析
# def loadMidi(track1):
for track in mid.tracks:
@ -127,12 +127,13 @@ def midiClassReader(midfile: str):
Notes = []
tracks = []
try:
mid = mido.MidiFile(midfile)
except FileNotFoundError:
mid = mido.MidiFile(filename=midfile,clip=True)
except Exception:
log("找不到文件或无法读取文件" + midfile)
return False
log("midi已经载入了。")
tpb = mid.ticks_per_beat
bpm = get(midfile)
bpm = get(mid)
for track in mid.tracks:
overallTime = 0.0
instrument = 0