I actually wrote an ID3 tag extractor entirely in Xojo native code. The ID3 tag structure is actually not that complicated: basically a 10-byte header plus variable bytes of data (the number of bytes are in the header). I created a simple class that takes a FolderItem as an input, and adds all ID3 tags to a dictionary property of the class called “ID3Tags”.
If interested, I’ve included a link where can download my project.
Xojo ID3 Tags Example Binary Project … download it here
The real difficulty I ran into was the encoding of the text (sometimes UTF, sometimes not). To simplify the output, I basically run all the data through Xojo’s “.ToText”.
You could reverse what I’ve done in reading the tags to add (write) new ID3 frames.
Some of the specs I used are here:
https://id3lib.sourceforge.net/id3/id3v2.3.0.html
Anyway, hopefully this can help someone.