PlayStreamEvent.noteOnDuration

The duration between this non-zero velocity note on and its associated note off.

Will be zero if this isn't actually a note on, the input stream was not seekable (e.g. a real time recording), or if a note off was not found ahead in the stream.

It is basically how long the pianist held down the key.

Be aware that that the note on to note off is not necessarily associated with the note you'd see on sheet music. It is more about the time the sound actually rings, but it may not exactly be that either due to the time it takes for the note to fade out.

struct PlayStreamEvent
Duration noteOnDuration;

Meta