TheBoxyBear / charttools

Library for editing Clone Hero song files in .NET
https://theboxybear.github.io/charttools
GNU General Public License v3.0
13 stars 4 forks source link

Replace the Vocals model #83

Closed TheBoxyBear closed 1 week ago

TheBoxyBear commented 2 weeks ago

As previosuly discussed, the Vocals model should be rebuilt to accomodate for harmonics present in Midi files.

TheBoxyBear commented 2 weeks ago

In addition to the model, Vocals should be handled as a separate component not part of instruments. This applies moving it from InstrumentSet to Song and InstrumentComponentList to ComponentList.

TheBoxyBear commented 2 weeks ago

For now, Vocals should only define the Standard track.

TheBoxyBear commented 2 weeks ago

To simplify working with lyrics, a class similar to the previous Phrase should be introduced in the form of a wrapper for a PhraseMarker and a set of VocalsNote. This class would be instanced from a helper method grouping a set of PhraseMarker and VocalsNote.

This class would provide more direct access to lyric text like the previous Phrase class, applying any changes to the wrapped objects. As the wrapped objects would be stored by referenced and updated in real-time, there would be no need to convert back to the standard (new) model.