When using unicode characters (e.g. chinese) in easytag, a warning message was displayed saying that the id3lib has a bug when handling unicode. The tag with unicode character cannot be saved correctly. When easytag tried to read the unicode tag back, the characters were different. Reproducible: Always Steps to Reproduce: 1. input unicode character to an mp3 file in easytag 2. save the mp3 file 3. re-open the file and read the tag back Actual Results: The unicode tag was not the same with the input. Expected Results: The unicode tag should be the same with the input. The warning dialog suggested to patch id3lib with a patch supplied by easytag. It can be found in src/id3lib/patch_id3lib_3.8.3_UTF16_writing_bug.diff in easytag's source tarball. I tried it by adding an epatch in the ebuild and it does fixed the problem. My computer is amd64. The version of easytag is 2.0 and id3lib is 3.8.3.
Created attachment 116279 [details, diff] This patch fixed the problem. It can be found in the easytag tarball. It is attached for your convenient.
Portage 2.1.2.2 (default-linux/amd64/2006.1/desktop, gcc-4.1.1, glibc-2.5-r0, 2.6.17-gentoo-r7 x86_64) ================================================================= System uname: 2.6.17-gentoo-r7 x86_64 AMD Athlon(tm) 64 Processor 3000+ Gentoo Base System version 1.12.6 Timestamp of tree: Sat, 07 Apr 2007 07:30:01 +0000 dev-java/java-config: 1.3.7, 2.0.30 dev-lang/python: 2.3.5-r2, 2.4.3-r4 dev-python/pycrypto: 2.0.1-r5 sys-apps/sandbox: 1.2.17 sys-devel/autoconf: 2.13, 2.61 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10 sys-devel/binutils: 2.16.1-r3 sys-devel/gcc-config: 1.3.14 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="amd64" AUTOCLEAN="yes" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=k8 -O2 -fomit-frame-pointer -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config" CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c" CXXFLAGS="-march=k8 -O2 -fomit-frame-pointer -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="distlocks metadata-transfer parallel-fetch sandbox sfperms userfetch" GENTOO_MIRRORS="http://gentoo.osuosl.org/" LINGUAS="zh_TW en_GB" PKGDIR="/usr/portage/packages" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X aac acpi alsa amd64 apache2 ares berkdb bitmap-fonts bzip2 cairo cdparanoia cdr cjk cli cracklib crypt cups curl dbus doc dri dvd dvdr eds emboss encode enscript esd exif fam firefox flac font-server foomaticdb fortran ftp gdbm gif gimp gpm gstreamer gtk gtk2 hal iconv imagemagick ipod ipv6 isdnlog joystick jpeg kde latex ldap lesstif libg++ mad midi mikmod mng mp3 mpeg ncurses nls noamazon nptl nptlonly ogg oggvorbis opengl oss pam pcre pdf perl php png posix postgres ppds pppd python qt qt3 qt4 quicktime readline reflection samba sdl session spell spl sql sqlite ssl subversion sysvipc tcpd tetex truetype truetype-fonts type1-fonts unicode unzip usb userlocales vcd vorbis xine xml xorg xsl xv xvid zip zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="keyboard mouse joystick" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="zh_TW en_GB" USERLAND="GNU" VIDEO_CARDS="nvidia" Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, MAKEOPTS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY
It's allready included in id3lib-3.8.3-r5 by name of id3lib-3.8.3-unicode16.patch. *id3lib-3.8.3-r5 (05 Oct 2006) 05 Oct 2006; Diego Petten<C3><B2> <flameeyes@gentoo.org> +files/id3lib-3.8.3-unicode16.patch, +id3lib-3.8.3-r5.ebuild: Add patch to fix unicode16 writing. Thanks for the users in bug #130922.