Colin Raffel

Results 195 comments of Colin Raffel

This is caused by `pretty_midi`'s parsing logic, which intentionally closes all open notes of a given pitch when it sees a note off for that pitch (all on the same...

> Could you help in this. Why is there a estimate_beat_start when there is already a get_beats which returns all the beat location in seconds. A bit unclear, not sure...

The files you uploaded do not produce empty piano rolls. ```Python import pretty_midi pm = pretty_midi.PrettyMIDI("Anger_Abm_145bpm_7 - Copy) import numpy as np print(np.all(pm.get_piano_roll() == 0)) print(np.nonzero(pm.get_piano_roll())) ``` produces ``` False...

PRs are welcome to resolve #151; I'd be happy to have normalization be via a kwarg which is set to `False` by default.

This likely could be helped by some optimizations to `mido`; beyond that, it would be great to switch to a native C++ backend.

@maezawa-akira added the sustain pedal functionality, maybe he can comment?

> In TimeSignature, you don't keep around the notated 32nd-notes in a MIDI quarter-note (24 MIDI Clocks) so when you write a file, this information is lost. Ah, interesting, I...

> Seems worthwhile doing the minimally invasive fix for now. For sure. Since this issue is kind of a far-reaching one, I created a separate issue, which I can resolve...

Out of curiosity, I grabbed 10,000 random MIDI files and computed the relative occurrence of different values in the third and fourth data slots of `TimeSignatureChange` events: ``` Number of...

Can you post this MIDI file somewhere so we can test it out?