Closed xhenner closed 9 years ago
I change my mind of the patch and try to parse any unknown frame anyway. To be honest, I need to do this for my write patch which needs me to track all the frames, even the proprietary one. I can squash the 2 commits if you want
Sorry for the delay! Yes, please merge the two commits into one, and then I'll merge it in.
done
You also need to run go fmt
on that too (sorry - forgot to mention that).
my bad reformatted
The patch db723fecfc08a91c8363b422a6668e7c261bb658 is a little too strict and I end up having files with missing tag. The main cause was the iTunes specific tags.
I tweaked the validity check to just ignore unknown frame and try to continue the parsing if possible.
On a side note, the year() API call is broken in the current state, since the func (f frameNames) Name() method use the same frame names for 2.3 and 2.4 BUT in 2.4 TYER is replaced by the TDRC frame
And, to complicate things, some software still use 2.4 frames in 2.3 tagging (for example Musicbrainz Picard use TSOP frame in 2.3 tagging)
I propose to make the following change : 1) merge the validity list for 2.4 and 2.3. It will assure a better compatibility with strange tagger 2) change the logic of the Name() method to use TDRC if present, TYER if not (or maybe prefer the TORY to TYER ?)