Source i (link to git-repo or to original if based on someone elses unmodified work):

Add the source-code for this project on opencode.net

2
Become a Fan
5.0

Description:
NOTE: From 0.6.0 version, lrcShow-II support pyqt4.

Dependency:
Python >=2.4
pyqt3 or pyqt4

lrcShow-II is a Amarok script, could show lyrics (.lrc file) of current song dynamicly in a unattached window (written by pyqt3 and pyqt4), supporting local .lrc file searching, auto searching on net, auto downloading, interface color changing, show lines changing, font changing, proxy supporting, save encoder setting, a easy lrc file editor, fullscreen or OSD displaying, searching engine changing, auto hidding, a build-in help document browser, auto inserting lyrics in Amarok sidebar, adjusting .lrc file's time-tags offset, specifying searching rule (strategy) and so on.

It's config file is:
~/.kde/share/apps/amarok/scripts-data/lrcShow-II.conf
or
~/.kde3/share/apps/amarok/scripts-data/lrcShow-II.conf

Please read help document for details.
Last changelog:

09.2.23 - 0.9.2
1.fix a big bug that the accuracy of lrc only in second

09.1.27 - 0.9.1
1.fix a bug that "delete all embeded lrc" menu item is always enabled (pyqt3,pyqt4)
2.improved the evillyrics engine, based upon googlyrics2 and python's difflib (pyqt3,pyqt4; from OutLikeAShoe's branch)
3.fix a variable error bug in google search engine (poyqt3,pyqt4)
4.add a function that app is launched with the last show-mode settings (pyqt3,pyqt4)
5.add miniLyrics search engine (pyqt3,pyqt4)

08.9.4 - 0.9.0
1.a partner - OutLikeAShoe joins this project
2.fix some translation errors
3.modular search engines design (pyt3,pyqt4)
4.add miniLyrics as the fourth search engine (pyqt3,pyqt4)
5.add lrcDB as the fifth search engine (pyqt3,pyqt4) - from OutLikeAShoe
6.fix a bug that when user drags forward/backward the process of a track, the lyrics could not follow (pyqt3,pyqt4) - from OutLikeAShoe
7.add evillyrics as the sixth search engine (pyqt3,pyqt4) - from OutLikeAShoe
8.auto detect engines in "engines package"
9.add winampcn as the seventh search engine (pyqt3,pyqt4) - from OutLikeAShoe
10.add google as the eighth search engine (pyqt3,pyqt4) - from OutLikeAShoe
11.start to support embeded lyrics in apetag, id3v2-uslt, id3v2-sylt, lyrics3v2, lyrics3v1 (pyqt3,pyqt4)
12.add "prioritize the lrc in media file" function (pyqt3,pyqt4)
13.add a function that auto order the results from search engine (pyqt3,pyqt4) - from OutLikeAShoe
14.auto record the last position of the window when application quits, but this function would not be called if close lrcShow-II with Amarok script manager (pyqt3,pyqt4)
15.add lyrdb as the ninth search engine (pyqt3,pyqt4) - from OutLikeAShoe
16.Amarok auto switch to lyrics interface when lrcShow-II auto insert lyrics into siderbar (pyqt3,pyqt4)
17.miniLyrics' search engine can not work anymore, give it up at present (pyqt3,pyqt4)

08.8.7 - 0.8.2
1.add "about Qt" menu item (pyqt3,pyqt4)
2.combine certain menu items into "help" sub-menu (pyqt3,pyqt4)
3.fix a bug that there is no lrc in window but lrcShow-II still tries to find current line of lrc when user switches the display mode between normal and fullscreen (pyqt3,pyqt4)
4.rebuild the display sub-menu (pyqt4)
5.separate the "stay on top" display mode from "OSD" display mode (pyqt3,pyqt4)
6.re-build the whole codes of menu (pyqt3)
7.now pyqt3 and pyqt4 version use the same APIs of Qt, of course different Qt's version, except the part of fast setting bar
8.auto hide the cursor under fullscreen display mode (pyqt4)
9.enhance the compatibility of reading non-standard lrc file (pyqt3,pyqt4)
10.fix the function "clear all tags" in lrceditor to work correctly when handle non-standard lrc file (pyqt3, pyqt4)
11.fix a bug that occurs when write offset to file and the original file has offset tag but no exact value, like [offset (pyqt3, pyqt4)
12.add a function that save the lrc file in media file's path (pyqt3,pyqt4)
13.add a function that search the lrc file in media file's path additionally (pyqt3,pyqt4)
14.fix a bug that app would name the lrc file from net using old tag info if user change the tag info in Amarok then use "search lrc on internet" function (pyqt3,pyqt4)
15.fix a bug that under horizontal mode the "normal display mode" menu item is still enabled (pyqt3,pyqt4)
16.fix a bug that user canceled the lrc file already, but app would still auto reloads the lrc file after switching the mode between horizontal and vertical (pyqt3,pyqt4)
17.now the lrc-editor only load the local lrc file which window currently displayed (pyqt3,pyqt4)

08.7.10 - 0.8.1
1.fix a bug that "send to Amarok sidebar" function occurs an error under horizontal-show (pyqt3,pyqt4)
2.rebuild and improve vertical location (pyqt3)
3.add the ability of remembering font's style (pyqt3,pyqt4)
4.update README document
5.fix a wrong hide behavior when need to choose local lrc file and auto hide function is enabled (pyqt3)
6.improve the method of detecting system's locale (pyqt3,pyq4)
7.auto disable the filter function when filter keyworld is empty (pyqt3,pyqt4)
8.fix a bug of deleting lrc's head in lrc-editor (pyqt3,pyqt4)
9.fix a bug that lrc is still rolling when Amarok pauses then user reloads the lrc (pyqt3,pyqt4)
10.fix a bug that the lrc would not be centered if certain line is wider than window (pyqt3)

08.6.30 - 0.8.0
1.update "chardet" copy to 1.0.1
2.fix translation
3.fix a bug that lrc-editor can not be opened when Amarok stops (pyqt3 pyqt4)
4.fix a bug that lrc-editor can not be opened when auto download function is enabled (pyqt3 pyqt4)
5.realize horizontal-show (pyqt3 pyqt4)
6.remove S-T transfer function (pyqt3)
7.rebuild the GUI part of adding local search pathes (pyqt3)
8.add a warning when occur a encode error in lrc-editor (pyqt3 pyqt4)
9.use saving codec to save the lrc file in lrc-editor (pyqt3 pyqt4)
10.add setting shortcuts' GUI (pyqt3 pyqt4)
11.fix a bug that switch display mode occurs an error when Amarok stops (pyqt3 pyqt4)
12.update readConfig module
13.update lrcParser module

08.6.10 ï¼ 0.7.2
1.remove the richText support in lrceditor (pyqt4)
2.rebuild the configure GUI (pyqt3 pyqt4)
3.move some menu items into configure GUI (pyqt3 pyqt4)
4.realize filter lyrics function (pyqt3 pyqt4)
5.fix a bug that "reload" item in menu still active when Amarok stop (pyqt3 pyqt4)
6.fix a bug that whole lrc file's path as matching information (pyqt3 pyqt4)
7.re-arrange some GUI's layout (pyqt3 pyqt4)
8.allow using media file's name to search local and name the lrc file from net (pyqt3 pyqt4)
9.allow user to set window's minimum width (pyqt3 pyqt4)
10.update document
11.add a config file update system
12.change the background color preset
(if your old version is 0.7.1, needn't to delete the config file; otherwise still need)

08.5.12 - 0.7.1
1.now could use Amarok scrpt manager's configure button to switch pyqt version
2.fix a bug that switch from OSD mode to normal mode, window very wide (pyqt3,pyqt4)
3.rebuild and enhance the lrc editor (pyqt3 pyqt4)

This version need update the config file

08.04.06 - 0.7.0
1.improve the calculation of "margin".(pyqt3 pyqt4)
2.fix the bug that window behavior error when showline=1 or font size too big.(pyqt4)
3.rebuild the fast setting bar.(pyqt3)
4.add Amarok control function in fast setting bar.(pyqt3)
5.set the default timeout 15 seconds.(pyqt3 pyqt4)
6.add the function that check the lrc file from net(pyqt3 pyqt4)
7.update and improve the baidu search engine.(pyqt3 pyqt4)
8.fix a bug in the function of downloading lrc file from ttplayer engine.(pyqt4)
9.add checking connection timeout when search engine download file directly.(pyqt3 pyqt4)
10.fix a bug that show document wrong in helpbrowser.(pyqt4)
11.realize window auto hide or minimized if there is no lrc.(pyqt3 pyqt4)
12.add "other setting" menu item and function.(pyqt3 pyqt4)
13.add auto inserting lrc to Amarok side bar function.(pyqt3 pyqt4)
14.add a option that users could decide if search lrc when track only has title or artist.(pyqt3 pyqt4)
15.add a function that show track's information in title bar.(pyqt3 pyqt4)
16.rebuild the part of Amarok status checking.(pyqt3 pyqt4)
17.fix a bug that can not decide the Amarok's status when track has neither title nor artist tag information.(pyqt3 pyqt4)
(Need to delete the old config file)

08.03.30 - 0.6.4
1.fix the bug that the Amarok signal listening thread stop when user use the Amarok control function, especially "pause" and "stop" function.(pyqt4)
2.fix the bug that the lyrics could not be in center if one line of lyrics wider than window.(pyqt4)
3.fix the bug that sometimes insert a wrong time tag when use the lrc editor.(pyqt3ã€pyqt4)

08.03.05 ï¼ 0.6.3
1.add a information dialog when config file need to be deleted.(pyqt 2 and 4)
2.fix a bug in which decide the save lrc director has the write permission(pyqt 3 and 4)
3.now local save path and search path could be different(pyqt3 and 4)
4.support more than one path to be local search pathes(pyqt3 and 4)
5.fix a bug that in lrc editor occur a encode error when user use "save as" function (pyqt4)
6.add a "remember" strategy in setting strategy dialog (pyqt3 and 4)
(NOTE:this version need delete the old config file)

08.02.03 - 0.6.1
1.rebuild the shortcuts part, and add shotcuts for pyqt3 version
2.fix encoder error after editing via lrc editor (pyqt3 and 4)
3.fix the bug that last line won't be highlighted (pyqt4)
4.add "cancel current lrc" function (3 and 4)
5.improve the method to decide if play or pause (3 and 4)
6.add "reload current track's lrc" function (3 and 4)

08.1.24 - 0.6.0
1.start to support pyqt4
2.fix a bug when load the font info from config file (pyqt3 and 4)
3.fix read encoder error bug after writting(pyqt3 and 4)
4.remove the ST interaction function (pyqt4)

08.1.12 ï¼ 0.5.1
1.fix a reading encoder is null bug
2.combine menu items
3.add a shortcut for "save offset to file"
4.add a warning dialog when user has no writing permission under local lrc path
5.fix a bug occurs when ttplayer engine search a result but infact it's none
6.fix a returning encoder bug in ttplayer engine
7.add Amarok control function
8.add a function that inserting lrc to Amarok's contextbrowser
9.now the default setting for saving encoder is utf8

08.1.6 - 0.5.0
1.fix a bug that the shortcuts codes occur error under some distributions
2.realize to separate the reading encoder and writing encoder
3.realize auto detecting local lrc file's encoder
4.the menu item "set lrc file's writing encoder" now just effect writing, not reading any more.
5.add "strategy" concept, please read help document for details.
6.add five strategies
7.add custom database for recording strategy info
8.fix a translation error
9.rename gui.py to mainGui.py

07.12.23 - 0.4.2
1.add ttplayer search engine
2.set the ttplayer search engine as default
3.fix a bug that release the mouse on GUI, highlight would be disappear
4.add auto choose function for lrc choose dialog
5.fix a bug that sometimes a line of lyric could not been highlighted
6.auto close lrc choose dialog after track changes

07.12.20 - 0.4.1
1.fix the behavior error when Amarok stops
2.improve matching the signal from Amarok
3.add "search from web" menu item
4.add a choose dialog when more than one local lrc files have been searched
5.add a question dialog when user want to download a file that already exists a same name file on local


07.12.18
First release.


Ratings & Comments

19 Comments

outlikeashoe

Wow... So you've finally published the Mini's engine! Great!

sanfanling

Yeah. I found minilyrics' server is not stable, maybe it is the reason that the module failed last time. But now, it works well.

sahwira

Firstly, this is a great app, i'm loving it. Makes my amarok much more complete. I was wondering however if it's possible to have it searching all the available engines automatically?

sanfanling

Thank you. It is possible, and I thought it before, but give it up because two reasons: first you should be waiting until app searched all engines, second this function would give you many result maybe, even useless.

outlikeashoe

Searching all the engines it's too slow.. but (for me) it would be nice to build an ordered list of user chosen engines and search sequentially on them: search on the first, if not found search on the second, etc.. At the moment I'm quite busy, but if I have time I'll try to help Sanfanling porting LrcShow-II to Amarok2 and improving the core with features like these. Cheers

sanfanling

hi outlikeashoe, nice to see you. i am bussy this days too. and one thing i should to discuss with you. i have seen your test code for amarok2, and i thought, with dbus system, app could independent to amarok2 script system, because receive and send signals could be done by any outside app not only amarok script. so i thing next generation lrcShow-III (maybe) would not be amarok script any more, but just a independent app, could support other players with dbus system and full signals.

eusonig

I think that a desktop plasmoid is the best solution for this kind of application and not an amarok script :).

outlikeashoe

Yeah.. Well, IMHO it's a good thing that LrcShow will become a standalone application, not only a modular search engine, but also a modular interface to the player. I don't know if they changed in the latest months but last time I've used Amarok2 dbus interface, it has a little lack: it hasn't a CurrentTimeMs function, it only returns the time in seconds.

sanfanling

I will tell Petel Zhou, he write this part, we are friends. But at least it need next version Amarok.

viashino

option to show the lyrics without the empty lines betwen the lyrics lines. and, search options ... like, artist and title match, if no mach is found, show a message, clicking the message open a window to i search artist and song (here can show not exactly names) ... when i play the song iron maiden - the longest day, he download the iron maiden - the trooper ... this happens alot (with ttplayer he fonds nothing), thats kinda sucks if you have windows, you can try the minilyrics and see me sugestions working ... and ... where i change the sites to search and download the .lrc ?

sanfanling

1.your idea is good, would be added 2.I thought this before, but I think, if the artist and title in amarok are wrong and cause to download a wrong lrc, one way is to set strategy, the other is to modify them with amarok, but at least your idea is also good 3.that's why I must add the strategy function for every track 4.change engine? just in right click menu and, in our country, minilyrics also is popular, but only in wimnap times, now we like to use ttplayer and its lrc show function is the best so far, lrcShow-II learns many functions and work methods from ttp's lrc show, you could try it. Thanks for your good suggestion.

daho

First of all, this is a great application. Congratulations! I think adding time-tags to lyrics increases their worth dramatically. Then I guess this becomes a kind of bug report, though I do not know where the bug is, in your app, in amarok or maybe even in me, but somehow, when I create lrc files with the build-in editor, for some music files, namely flac and long mp3s, the text gets displayed more and more delayed towards the end of the file, although I am sure I did tag them correctly. This happens with flac files and with long mp3 files, but just with the ones I created myself with the inbuild editor, files from others get displayed correctly, so that I think it has something to do with the time function in the editor, or the transmission of the time from amarok. I hope you understand what I mean. Daniel

sanfanling

First of all, thanks for your reporting anyhow. I think this problem is very strange, you know I just get the current time from Amarok with dcop function, and convert it into the former of "xx:xx.xxx", nothing else. I suggest that when you insert the time tag, you should compare it with the time showing on Amarok rapidly, if it is correct, it means my converting is right; if not, I should check my app. If everything is right but the problem still exists, please mail me the lrc file you made, even the media file. Best regards

yunfan

Keep it up man!

alegeott

very good script, but i have a suggestion: -Could you make resizable the window? In the fullscreen mode the window puts itself over the panels bar. -Alternatively, could you use the default amarok's window to display the text? -Could you make possible to add custom lyrics' search engine? Excuse me for my english, it isn't my first language. I hope that my requests are satisfiable... In any case, thank you

sanfanling

Hi alegeott. Thanks for your suggestion. In this app, resize the window is not easy, because the problem of location the current lyrics. In fact, full screen means cover all desktop including task bar, I think you need a display mode of maximum the window, I will add. The custom search engine is difficult.Every search engine has its own search rule. But if you have good search site, tell me and let me try if it could be added. My English also poor.... Happy Spring Festival

sanfanling

ttplayer's search engine would be added next version, it's powerful!

taizitju

I like it very much! It can get and show LRC automatically. I think it is the best amarok plugin!

nihui

That's just what I want!~ thanks,sanfanling!~

Pling
0 Affiliates
Details
license
version 0.9.2
updated
added
downloads 24h 0
mediaviews 24h 0
pageviews 24h 3

More Amarok 1.x Scripts from sanfanling:

Lyrics_CN
sanfanling
last update date: 17 years ago

Score 5.0

Other Amarok 1.x Scripts:

Gnome Play Video in Totem
mwheatland
last update date: 19 years ago

Score 5.0

editLyrics-gnome
ZeeD
last update date: 19 years ago

Score 5.0

amarok Alarm
aroth
last update date: 16 years ago

Score 5.0

amaroK Web Collection V xmms
pti-jean
last update date: 16 years ago

Score 5.0

SongLogger
lucatnt
last update date: 17 years ago

Score 5.0

amaroK Web Collection
pti-jean
last update date: 16 years ago

Score 5.0



System Tags