Summary: | WMA files interpret Album as Album Artist | ||
---|---|---|---|
Product: | [Applications] amarok | Reporter: | gregsharp.geo |
Component: | Collections/Local | Assignee: | Amarok Developers <amarok-bugs-dist> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | aakashrajdahal, gregsharp.geo, matej, mitchell, ralf-engels |
Priority: | NOR | ||
Version: | 2.5.0 | ||
Target Milestone: | 2.4.2 | ||
Platform: | Debian testing | ||
OS: | Linux | ||
Latest Commit: | http://commits.kde.org/amarok/22cffe186ca49c45 | Version Fixed In: | 2.7 |
Sentry Crash Report: |
Description
gregsharp.geo
2011-06-19 03:27:25 UTC
That is not an Amarok problem, but due to the proprietary file format that doesn't use id3 tags, but stores metadata differently. See also http://en.wikipedia.org/wiki/Windows_Media_Audio#Container_format Nothing we can do about that, sorry. Hi Myriam, If I'm not mistaken, Amarok uses Taglib which has reasonably good support for ASF. Since other softwares such as kid3 or picard are able to use this tag, I can't see why it is difficult for Amarok to support it as well. Would it be possible to re-open this bug report? For your reference, below I have pasted a sample code that demonstrates how to enumerate the ASF tags. The album artist is stored in "WM/AlbumArtist". Thank you, -Greg TagLib::FileRef f (filename); TagLib::ASF::Tag* asfTag = dynamic_cast<TagLib::ASF::Tag*>(f.tag()); TagLib::ASF::AttributeListMap& attrListMap = asfTag->attributeListMap(); for (TagLib::ASF::AttributeListMap::Iterator it = attrListMap.begin(); it != attrListMap.end(); ++it) { printf ("x "); std::cout << it->first; TagLib::ASF::AttributeList& attrList = (*it).second; for (TagLib::ASF::AttributeList::Iterator ait = attrList.begin(); ait != attrList.end(); ++ait) { std::cout << ", " << (*ait).toString(); } printf ("\n"); } Do you have taglib-extras complied with that support on? Then it should also work in Amarok as Amarok uses taglib as a dependency. See also the requirements here: http://quickgit.kde.org/?p=amarok.git&a=blob_plain&h=4038955cde30747deac667229ff5e382393536f8&f=README On debian testing, it seems that the ASF functionality is included in libtag, rather than libtag-extras. The code that I posted compiles, runs, and shows the correct album artist, but links only to /usr/lib/libtag.so.1. That's not possible , since ASF is in taglib-extras only. But anyway, reopening based on your comment. What does the tag editor in Amarok show for these tags? Hi there, It would be more helpful if you respond to Comment #5, and help Amarok better. Also, the latest version of Amarok is version 2.5, please to upgrade and let us know if the problem still exits. Thanks Setting status accordingly. Sorry for the delay. (1) Yes, bug still exists in Amarok 2.5.0 (2) Amarok tag editor shows same value for album and album artist. In contrast, kid3 shows the correct album artist. -Greg Thank you for the feedback. In TagLib 1.8, the support for ASF is inside, taglib-extras aren't needed anymore. Greg, can you please send me the offending file to my mail? The problem may lie in the fact the we read advanced tags from specialized tag like TagLib::ASF::Tag, but even when it is present, we read basic tags from basic TagLib::Tag, which may read the tags from a different metadata stream. I fixed this (and commit hooks didn't work again. But I think I also did fix this problem) Oh, definitely. Ralf, it is really strange, commit hooks apparently don't work for you. I think I know the cause, your commit e-mail is ralf.engels at nokia.com, which is not listed in identity.kde.org. Please update your ~/.gitconfig! Hi. Thank you for looking into the problem. I'm not sure if you still need it, but just in case, I sent to Matej a sample file by private email. -Greg (In reply to comment #13) > Hi. Thank you for looking into the problem. I'm not sure if you still need > it, but just in case, I sent to Matej a sample file by private email. -Greg Fixed in 2.7.0, confirmed with the song I got via mail. |