next up previous contents
Next: Main algorithm overview Up: Dynamic errors detection Previous: Indicators   Contents

Algorithm

The Dynamic error detection is implemented in the general checking function:



BEGIN

if (previous note should have been accentuated)

Error_next = played_velocity < next_velocity + accent_threshold

Error_previous = played_velocity < previous_velocity + accent_threshold

if (first note)

error = error_next

else if (last note)

error = error_previous

else

error = error_next && error_previous

endif

if (error)

error = Type ACCENT

else

if (played_velocity > expected_velocity + threshold)

Error = type TOO LOUD

else if(played_velocity < expected_velocity - threshold)

Error = type TOO SOFT

endif

endif

END




Mathieu Gilles (Betr. soltau) 2003-08-25