As wikipedia explains, ID3v1 and ID3v2 are completely unrelated and have different structure. Without seeing what your friend unit contains, it's hard to tell whether he implements both versions correctly or not. But since you said the version 1 works, and I don't see anything discriminating the two version in your sample code (again, this can't be concluded without seeing the actual unit code), I guess he only implements version 1.
Apparently, Cactus Jukebox supports ID3, both version 1 and 2. The related unit is here: https://lazarus-ccr.svn.sourceforge.net/svnroot/lazarus-ccr/applications/cactusjukebox/source/tagreader/mp3file.pas You can see how it's used here: https://lazarus-ccr.svn.sourceforge.net/svnroot/lazarus-ccr/applications/cactusjukebox/source/mediacol.pas -- View this message in context: http://free-pascal-general.1045716.n5.nabble.com/ID3v2-Reading-and-writing-MP3-metadata-tp5714707p5714708.html Sent from the Free Pascal - General mailing list archive at Nabble.com. _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal