This way, wouldn't have to reject tunes that the melody extraction doesn't currently support, enabling doing other things like working with the header data or viewing with abcjs, etc.. That is, we could wait to raise error until melody extraction is requested. Maybe use some cached properties. This should also make Tune init faster. Could also provide a simpler iterator that doesn't try to "play" the measures but just uses the note regex.
In #33 , a not-insignificant portion of The Session tunes (and 2 Norbeck tunes) are currently rejected (mostly because they have chords).
This way, wouldn't have to reject tunes that the melody extraction doesn't currently support, enabling doing other things like working with the header data or viewing with abcjs, etc.. That is, we could wait to raise error until melody extraction is requested. Maybe use some cached properties. This should also make
Tuneinit faster. Could also provide a simpler iterator that doesn't try to "play" the measures but just uses the note regex.In #33 , a not-insignificant portion of The Session tunes (and 2 Norbeck tunes) are currently rejected (mostly because they have chords).