Here's a patch for Unicode support. It doesn't support UTF-8
encoded texts yet as libid3v2 doesn't support them. It also
won't give you much help if
a) your libc doesn't understand iconv_open ("", ...)
b) your libc doesn't understand iconv_open ("UCS-2", ...)
c) your libc doesn't understand iconv_open ("ISO-8859-1", ...)
d) your libc doesn't have a working setlocale()
Doing those correctly would require proper autoconfiscating.
The patch is also somewhat cumbersome as (the API of)
libid3v2 is pretty broken with regards to encodings. It does,
however, work for me, and it will only use UCS-2 if it isn't
representable in l1. Displaying also works fine, now.
It also adds a -P option for formatted output, which works
reasonable well. DO NOT USE THAT VERBATIM as it contains
evil buffer overflows. It's the diff as I'm currently using it and
needs to be cleaned before actually applying it.
id3v2-diff-unicode