I'd say privatize these methods on FlacTag first and foremost. It is a little strange to only allow Vorbis Comments to get a custom key/value store.
Goals:
Provide access to all basic metadata that exists consistently between the supported tag formats
Perform no/minimal transformation on the data, as this exists to be a thin wrapper
Perform lossless conversions between tag types (I'm pretty sure it can do this because of goal 1? Not 100%)
Non-goals:
To support all possible tag formats (Only the most popular ones that also fall into goal 1)
To support all possible tag items
To support all possible file types (MP3, MP4, and FLAC are probably going to cover most libraries)
Similar to non-goal 1, this only supports the popular formats. ID3v2 can exist in pretty much any file, not to just MP3. Similarly, Vorbis Comments can exist in any OGG format (Vorbis, Opus, Speex, Theora, ...) not just FLAC.
We probably should set out some goals in the README and direct people who need more lower level access to lofty ?
I think one goal also maybe should be that is should be relatively consistent across all file formats.
cc/ @Serial-ATA
Examples:
31
41