Summary: | Juk doesn't honor locale setting | ||
---|---|---|---|
Product: | [Applications] juk | Reporter: | Denis Treskunov <daen> |
Component: | general | Assignee: | Scott Wheeler <wheeler> |
Status: | RESOLVED FIXED | ||
Severity: | normal | ||
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | unspecified | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
Denis Treskunov
2003-10-07 04:08:12 UTC
Actually Noatun and Konqueror currently only support ID3v1 (this will change for 3.2, but hasn't yet) so if they're properly displaying cyrillic characters that's a bug -- ID3v1 is strictly ISO-8859-1. I don't doubt that some things don't complain if you put in Cyrillic text, but it *shouldn't* work... However, JuK currently uses ISO8859-1 ("Latin1") for ID3v2 tags as well, I'll switch that to UTF8 in the relatively near future. Sorry, I didn't know that ID3v1 is 8859-1 only. It works fine on other players though, so I think it would be great if Juk read the user's locale settings and displayed the tags in the preferred locale, not strictly 8859-1. Sorry, what you're seeing here is a bug in other players that happens to work for your situation. But the whole idea of metadata is that it should be something that moves with the file and is independant of the settings on a specific user's machine. Producing broken files won't help the situation. :-) However, as I said, JuK in KDE 3.2 will support unicode tags, just not in the ID3v1 tag. I'll close this out once support for that is in. Subject: kdemultimedia/juk CVS commit by wheeler: Do UTF8 tagging for ID3v2 tags. As per the bug report this allows for pretty much any sorts of strings that KDE can handle for input... CCMAIL:65636-done@bugs.kde.org M +3 -0 tag.cpp 1.49 --- kdemultimedia/juk/tag.cpp #1.48:1.49 @@ -28,4 +28,5 @@ #endif #include <taglib/xiphcomment.h> +#include <taglib/id3v2framefactory.h> #include "cache.h" @@ -84,4 +85,6 @@ Tag::~Tag() void Tag::save() { + TagLib::ID3v2::FrameFactory::instance()->setDefaultTextEncoding(TagLib::String::UTF8); + if(!m_info.isWritable()) return; |