I have a song with a MIDI Suppress Events filter that allows the note range “Bb2-Bb8” (that’s the text I entered). The filter works (i.e. my entered text seems to be parsed and the filter works as expected). I subsequently disable that filter (not sure if that is important). I save the song.
When I re-open Cantabile and open the song, I get “Fail to open song - JSON parse error at line 616, character 27, context objects.[0].routes.[0].midiFilter.items.[0].notes - Not a valid note”.
Depressing.
I edit line 616 of the song file and change “Bb2-Bb8” to “A#2-A#8”. The song opens and works normally.
Elation!
It seems that the parser for the filter and the parser that reads / opens song files have different rules …