Version: (using KDE KDE 3.2.3) Installed from: Debian testing/unstable Packages OS: Linux It would be great to see lyrics displayed in the context browser. Lyrics as stored in the id3v2-tag for mp3 files, I don't know anything about ogg-files though. Should this be implemented, then it might be worth considering automatic lyrics downloading for the future!
I think most lyrics are stored in the Lyric3 tag. Btw. this wish is probably better to move to TagLib, until implemented there it amarok cannot do much.
I am casting my maximum (20) votes because I think Synchronized Lyrics will benefit: Foreign-Language-Learners, Karoke Fans, Audiobook Fans, and the Hearing Impaired. Technical Update: The ID3 standard body deprecated Lyrics3 in favor of the new ID3v2 "USLT" and "SYLT" frames. We now have "SYLT" for Synchronised lyrics/text, and "USLT" for Unsychronised lyrics/text transcription. The embedding process is similar to Lyrics3, only the data is structured somewhat differently: http://www.id3.org/id3v2.3.0.html#sec4.9 Implementations have started appearing: WinAMP SYLT Lyrics Plugin http://sites.rapidus.net/gpatrick/en/indexen.html XMMS-SingIt (still early development) http://stud.fbi.fh-darmstadt.de/~glogow/ IStar Composer: http://www.scriptsoftware.com/composer/ "SYLT" for Synchronised lyrics/text, and "USLT" for Unsychronised lyrics/text transcription:
Apparently Taglib does provide the underlying functionality needed to read the SYLT/USLT frames, as discussed in bug #77926 Although it's not "generic" API, the SYLT/USLT frame contents could be accessed with code something like this: TagLib::MPEG::File f("foo.mp3"); if(f.ID3v2Tag() && !f.ID3v2Tag()->frameListMap()["SYLT"].isEmpty()) std::cout << f.ID3v2Tag()->frameListMap()["SYLT"].front() << std::endl; ...or... TagLib::Vorbis::File f("foo.ogg"); if(!f.tag()->fieldListMap()["SYLT"].isEmpty()) std::cout << f.tag()->fieldListMap()["SYLT"].front() << std::endl; Thanks, John
Yes, we access disc number and composer that way, so anyone interested on this can see metabundle.cpp for examples. USLT was planned, I didn't do it because I had no time, considering other priorities. I don't plan adding SYLT, though. I think it'd would be better off as a script.
I have added USLT lyrics to my mp3 files with Kid3. How to create an Amarok script to display the USLT frame ? Thanks!
For those interested in synchronized lyrics, please vote for new Bug 133012 (wishlist) for ID3v2.4 "SYLT" synchronized lyrics support in Amarok. Thanks!
There is already an existing script for Amarok, which reads/writes the USLT tag for ID3v2.4. Lyrics ID3: http://kde-apps.org/content/show.php?content=39570 Stifi
This would be a great feature because iPod's can display lyrics stored in the USLT field of MP3 files. It would be nice to have an option to store lyrics in the ID3v2 tag as well as the database, as well as a way to save all lyrics in the database to the respective file.
*** Bug 131567 has been marked as a duplicate of this bug. ***
The lyrics script on kde-apps has moved to this address: http://kde-apps.org/content/show.php?content=49274
Closing as WONTFIX: * would be redundant to save the lyrics in the DB and the tags (otherwise we would have to write covers, ratings, scores and stuff as well to the tags) * there is already a script available
As said Michael here (http://bugs.kde.org/show_bug.cgi?id=131567#c6), setting a flag in iPod database is needed to have the lyrics on the screen. gtkpod (0.99.10 with libgpod 0.5.2) is already able to do that (of course if lyrics are already stored in ID3v2 tag). It would be nice if someone could implement this feature, maybe using the idea from gtkpod code (I don't know how to do it, I'm sorry but I'm not a developer..). Bye Scido
#11 * would be redundant to save the lyrics in the DB and the tags (otherwise we would have to write covers, ratings, scores and stuff as well to the tags) and why don't we write all these informations on the files? As long as lyrics, covers and ratings are managed by portable players why amarok can't make things easier? * there is already a script available which is not part of the amarok porject, is not in a normal installation of amarok and doesn't work everytime (but that's not an amarok problem)