Вместо этой библиотеки (которая, кажется, в настоящее время не поддерживается) вы можете использовать другую, предоставляющую время в секундах из коробки для каждого события, например, используя pretty-midi - документы (python 3):
import pretty_midi
midi_data = pretty_midi.PrettyMIDI('example.mid')
print("duration:",midi_data.get_end_time())
print(f'{"note":>10} {"start":>10} {"end":>10}')
for instrument in midi_data.instruments:
print("instrument:", instrument.program);
for note in instrument.notes:
print(f'{note.pitch:10} {note.start:10} {note.end:10}')
Вы можете отфильтровать события заметки по note.start
и note.end
разам, уже вычисленным в секундах.