My new idea how to measure those very simply in real-time (!), even for the outside world, was triggering certain output midi events, e.g. notes, when a certain error occurs. Then, e.g. using the AutoHotkey midi input library we could immediately draw in real-time the performance curve while playing Synthesia in windowed mode on the left side of the screen and on the right side those curves would develop based on the incoming "error event notes". Especially following error conditions for the practice mode should be represented by midi out events:Performance Analysis 2 ... notes per second, correct notes per second, and missed notes per second.
1. One error note played which we could further differentiate as
a) One non-available note was played.
b) A multi-note structure was not played fully and simultaneously.
Then by recording those midi event outputs and looking where those curves have certain local maximums we could set the settings of the next playing round automatically, even by changing the input midi by adding "error concentration area markers", then looping among those for more practicing and so on. At least we can play around with various ideas of what could be done using those error time locations and their countings.
E.g. one idea could be playing the telephone ring sound on a free midi channel for each error event. Best would be being able to define:
1. Midi-Output port, a separate one just for those error event notes, thanks to Midi-Yoke we can have up to 16 extra midi output ports.
2. Midi channel
3. Program change for the error event notes, e.g. using Telephone sound in GM which is 125 Telephone Ring
4. Pitch to be used for each error event type
5. Velocity and Duration to be used for those "error event notes", well duration should be a quite short value like a 16th note, maybe a bit longer to hear that sound well enough.