[Banshee-List] UTF8 in tags



Hello,

Turkish characters in id3 tags are not displayed correctly in banshee.
The attached patch seems to fix that. I will be glad if people can
test it with other languages.

Of course, the problem remains for all the other tags out there. In
banshee each music format tagging code seems to handle encodings
differently. Isn't there a way to unify them or something?

Good day,
Doğacan Güney
? mp3_tags.patch
? burn-sharp/.deps
? burn-sharp/.libs
? burn-sharp/glue.lo
? burn-sharp/libnautilusburnglue.la
? libbanshee/.deps
? libbanshee/.libs
? libbanshee/cd-detect.lo
? libbanshee/cd-rip.lo
? libbanshee/gst-encode.lo
? libbanshee/gst-init.lo
? libbanshee/gst-misc.lo
? libbanshee/gst-player-engine.lo
? libbanshee/libbanshee.la
? libbanshee/xing/.deps
? po/.intltool-merge-cache
Index: entagged-sharp/Mp3/Util/Id3v1TagReader.cs
===================================================================
RCS file: /cvs/gnome/banshee/entagged-sharp/Mp3/Util/Id3v1TagReader.cs,v
retrieving revision 1.5
diff -p -u -2 -r1.5 Id3v1TagReader.cs
--- entagged-sharp/Mp3/Util/Id3v1TagReader.cs	1 Nov 2005 23:32:03 -0000	1.5
+++ entagged-sharp/Mp3/Util/Id3v1TagReader.cs	3 Nov 2005 16:03:23 -0000
@@ -80,5 +80,5 @@ namespace Entagged.Audioformats.Mp3.Util
 			byte[] b = new byte[length];
 			mp3Stream.Read( b, 0, b.Length );
-			string ret = Encoding.GetEncoding("ISO-8859-1").GetString(b).Trim();
+			string ret = Encoding.UTF8.GetString(b).Trim();
 
 			int pos = ret.IndexOf('\0');
Index: entagged-sharp/Mp3/Util/Id3v23TagReader.cs
===================================================================
RCS file: /cvs/gnome/banshee/entagged-sharp/Mp3/Util/Id3v23TagReader.cs,v
retrieving revision 1.5
diff -p -u -2 -r1.5 Id3v23TagReader.cs
--- entagged-sharp/Mp3/Util/Id3v23TagReader.cs	1 Nov 2005 23:32:03 -0000	1.5
+++ entagged-sharp/Mp3/Util/Id3v23TagReader.cs	3 Nov 2005 16:03:24 -0000
@@ -71,5 +71,5 @@ namespace Entagged.Audioformats.Mp3.Util
 
 				data.Get(b);
-				string field = Encoding.ASCII.GetString(b);
+				string field = Encoding.Unicode.GetString(b);
 				if (b[0] == 0)
 					break;
Index: entagged-sharp/Mp3/Util/Id3v2TagReader.cs
===================================================================
RCS file: /cvs/gnome/banshee/entagged-sharp/Mp3/Util/Id3v2TagReader.cs,v
retrieving revision 1.5
diff -p -u -2 -r1.5 Id3v2TagReader.cs
--- entagged-sharp/Mp3/Util/Id3v2TagReader.cs	1 Nov 2005 23:32:03 -0000	1.5
+++ entagged-sharp/Mp3/Util/Id3v2TagReader.cs	3 Nov 2005 16:03:25 -0000
@@ -55,5 +55,5 @@ namespace Entagged.Audioformats.Mp3.Util
 			mp3Stream.Seek(0, SeekOrigin.Begin);
 
-			string ID3 = Encoding.ASCII.GetString(b);
+			string ID3 = Encoding.Unicode.GetString(b);
 
 			if (ID3 != "ID3")


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]