Lyrics screenlet

Conky

Source (link to git-repo or to original if based on someone elses unmodified work): Add the source-code for this project on opencode.net

38
7 .7
Description:

This screenlet downloads and display synchronized lyrics of music files playing in the audio player.

Version 0.7.0 allows to create and upload lyrics to the database (for some time it will be used for testing, but I'll try not to delete anything :P)
Steps to create synchronized lyrics:
find unsynchronized lyrics (later will be implemented by the screenlet itself)
drag&drop text or file with lyrics to screenlet
during playing song, use Space key to insert time info
save or upload lyrics before screenlet switch to another song :)

Requires:
python-numpy can be needed on Ubuntu and possibly some other distributions in the case of crashing when you move cursor over control buttons
python-chardet for better dealing with different lyrics encoding, but it's optional

Set lyrics offset:
by 0.1s: Shift+Up/Down key
by 0.5s: Up/Down key

Supported players:
Rhythmbox
Exaile
Banshee
Audacious
Amarok
Music Player Daemon based players
Quodlibet - need to install plugin in package
Listen 0.6 and higher
Gmusicbrowser
Xmms - need to install pyxmms
Any other that support MPRIS API (direct or with plugin) - vlc, Songbird ...

Supported lyrics sources: ALSong, minilyrics, lrcdb
Last changelog:

9 years ago

0.7.2
- fixed bug in saving/restoring cairo state in LyricsPanel visible on default theme
- searching lyrics on disk with ignoring case and accent and some bug fixes
- support of "offset" metadata in lyrics files
- added settings option - format of filename for saving/loading lyrics with automatic
conversion between them
- properties window works with newer screenlets package version

0.7.1
- fixed accessing of the song info metadata - doesn't crash on missing metadata
- works with a new gtk version (deprecation warning turned into TypeError)
- fixed bug in saving/restoring cairo context (in Widget and LyricsPanel classes)

0.7.0
- added possibility to upload lyrics to the database and using this database for searching
- reporting a missing lyrics to the database
- creating synchronized lyrics works again

0.6.9
-lyrics align settings: left, center, right
-lyrics translation on/off switch in menu
-update translation settings immediately
-safe minimizing (use when screenlet itself moves on desktop)
-works in gnome 2.30 (bug is in pycairo, not screenlet!)
0.6.8
- lyrics searching bug fix, now it should really works, I promise :D
0.6.7
- update of lyrics engine: ALSong now work again (it stopped to work at all after they changed ip address), minilyrics has better encoding handling
- theme update

older logs in changelog file

chriskin

10 years ago

what about nothing happening with Japanese symbols though? direct Google translate can give a translation - the screenlet just avoids them (symbols are not written a second time, only latin letters are)

Report

C

dencer

10 years ago

if you send me such lyrics file, maybe I'll do something, in some day

Report

Alexiron

10 years ago

hey man ,i have not find a solution to my problem yet.... the screenlet does not save th e window optionslike "lock" , "sticky" and "keep bellow" , every time i click them everything is ok , but on reboot the only option that is active is the "keep above" one , any suggestions?

Report

C

dencer

10 years ago

try to monitor configuration file in ~/.config/Screenlets/Lyrics/ Check if this settings is written after you set them, after you quit screenlet and after restart, cause no such thing happens to me. And does it happen to other screenlets ? But during testing I found another issue, tray icon probably works only for me, cause I run it different way, so thanks :)

Report

EvilGnome

10 years ago

I have this same (very frustrating) problem. ~/config/Screenlets/Lyrics/default/Lyrics1.ini is updated correctly when options are initially set, but reverts a few seconds after the screenlet is started again.

Report

EvilGnome

10 years ago

It seems the problem can be worked around by editing the ~/.screenlets/config.ini file, but I don't know how this affects people using different rules for different screenlets.

Report

C

dencer

10 years ago

still it shouldn't be related to concrete screenlet. As I don't know what version do you use, my tip is this bug https://bugs.launchpad.net/screenlets/+bug/345359. I have installed version 0.1.2-7, that already has this fixed, but probably many distros use stable version, and this have this bug. If you don't know how to update for you distro, try replace file backend.py from http://dl.dropbox.com/u/4466860/backend.py (in my ubuntu it is in /usr/share/pyshared/screenlets, in my older mandriva in /usr/lib/python2.5/site-packages/screenlets). And don't forget on doing backup first.

Report

CClips

10 years ago

I'm not sure if you've already added it, but having the screenlet disappear when it doesn't find a lyric would be loads better than the current icon. I listen to a lot of lesser known artists and it often doesn't find the lyrics for a lot of songs.

Other than that, great screenlet.

Report

C

dencer

10 years ago

hey, I have in plan improve these icons :D

but okay, as many wants it completely disappear, in next version you will be satisfied. I already added possibility to use tray icon instead, just few tests and modifications are still needed.

Report

simmesimme

10 years ago

Hi Marcel!

Thanks for this great piece of Software!
Is there any chance for the LastFM plugin of Rythmbox to be supported? Since the player itself knows the meta data of the tracks, it can't be that difficult...?

Greetings!

Report

C

dencer

10 years ago

Check if it really works in new version. Many times something works only on my machine :P

Report

simmesimme

10 years ago

Yay! Incredible!

You made my day! Works like a charm! Exactly what I wanted. If feature requests were always treated like this...
Thanks a lot!

Report

adroitster

10 years ago

One of the most brilliant screenlet made till date.

Report

chriskin

10 years ago

having google translate on made all songs show no lyrics at all

if i can help with any info (run it in terminal and search for something etc) tell me :)

i'm on karmic 64bit
-----------
another problem is that it keeps changing place on my desktop every time a song ends :S

-----------
good work on the fading of the lyrics by the way :)

Report

C

dencer

10 years ago

I always forget something to write. To use google translate, python-simplejson package is needed. Check this first, even if I use karmic too, and had it installed before.
If it doesn't help, use terminal. I didn't care much about list index bounds, so there is another reason to crash

Report

chriskin

10 years ago

i have the python-simplejson package installed.
i investigated a little more on the problem and it is more accurate to say it like this :

1. japanese songs don't get lyrics when the translator is on, even if the get if it off (japanese to english translation - i don't know if this matters at all)
2. English songs get lyrics when the translator is on , but the do so in the middle of the song. (english to greek translation)
here you can get the output of the japanese song in the terminal
http://dl.dropbox.com/u/452182/On.txt

Report

C

dencer

10 years ago

by default, chinese, japanese and probably more are filtered, cause many english lyrics already contains chinese, japanese, ... translations. You must uncheck Filter some languages first (I know, not very meaningful name).

And for second case, I get translation quite quick. But in this version, it was manly for testing, if it such feature have sence. I can later add saving translations, so it can solve this issue at all.

Report

chriskin

10 years ago

the filtering is off, i always have it off in order to see the Japanese lyrics, what i meant was that lyrics don't appear Only when the translator is on. they appear as they should when it is off.

Report

monikgtr

10 years ago

Wow! I had my doubts about whether it would actually work or not... and omg, it does! I've just played a few songs and it's flawless :D

Report

kubista

10 years ago

Marcel,

this is really a great screenlet! Works great, and looks even better. Some suggestions for further development:

1. Smooth scrolling: Right now, lyrics are suddenly advancing as soon as there's a new line coming up. Experience would be smoother if you'd use the delta time between current and next line and scroll the text upwards with a speed relative to that interval (much like an autocue)

2. Fade in/out: When starting up / shutting down and between songs fade to transparency

3. Make the screenlet invisible when no audioplayer is running or when no (recognized) song is playing.I saw this was already suggested by someone else.

Report

C

dencer

10 years ago

2nd and 3rd completed, however fade in/out now only on song change

But I'm not sure if I understant to the 1st suggestion. Animation should never stop, still slowly move from one line to another?

Report

kubista

10 years ago

At this moment the text is animated one sentence at the time, so there is only animation between to sentences. I'd like a more continuous animation, much like film credits you see after a movie, where the animation speed is constant.

This would mean that the 'active' highlighted sentence is also moving, so you'd have to apply some sort of smart animation algorithm that prevents long sentences to scroll out of sight before the next sentence is due, but scroll short sentences fast enough.

Let's take this lyrics

00:01 I love you
00:04 I really love you
00:07 I do really really totally love you completely, I never loved anybody so much as I do love you
00:30 I love you
00:33 ....

In the current version it would be animated like this

1. Animate line 1
2. Wait 3 seconds
3. Animate line 2
4. Wait 3 seconds
5. Animate line 3
6. Wait 21 seconds
7. Animate line 4
etc...

and here is what I propose:
1. Set scrollspeed to 1/3 line per second
2. Scroll line 1 upward for 3 seconds
3. Set scrollspeed to 1/3 line per second
4. Scroll line 2 upward for 3 seconds
5. Set scrollspeed to 1/21 line per second
6. Scroll line 3 upward for 21 seconds
etc..

Even better might be to dampen the speed changes, so that during the animation of line 2 the speed is decreased from 1/3 line per sec at the start to 1/21 line per sec at the end to match the speeds of the previous and next line.



Report

C

dencer

10 years ago

I played a little with animation, but now it doesn't look very nice when animation is slow. Text is aligning to the raster, to better look on display. Only one animation is boring also to me, but it will take more time to change it.

Report

lianimator

10 years ago

Just one thing.. I'm seeing a delay on songs which are not saved on the disk yet.. I think the delay may be related to the download time. Hope that made sense.

Report

chriskin

10 years ago

i don't know whether this is as simple as it sounds - i am not a programmer (yet, at least).

what i thought was whether it is easy enough to include a button that will make use of the "detect language" of google translate and get a translation instead of the original lyrics when asked.
(since there are already some applications using google translate, i thought it wouldn't be difficult , is there any way you can include such a feature? it would be REALLY good)

Report

9 years ago

0.7.2
- fixed bug in saving/restoring cairo state in LyricsPanel visible on default theme
- searching lyrics on disk with ignoring case and accent and some bug fixes
- support of "offset" metadata in lyrics files
- added settings option - format of filename for saving/loading lyrics with automatic
conversion between them
- properties window works with newer screenlets package version

0.7.1
- fixed accessing of the song info metadata - doesn't crash on missing metadata
- works with a new gtk version (deprecation warning turned into TypeError)
- fixed bug in saving/restoring cairo context (in Widget and LyricsPanel classes)

0.7.0
- added possibility to upload lyrics to the database and using this database for searching
- reporting a missing lyrics to the database
- creating synchronized lyrics works again

0.6.9
-lyrics align settings: left, center, right
-lyrics translation on/off switch in menu
-update translation settings immediately
-safe minimizing (use when screenlet itself moves on desktop)
-works in gnome 2.30 (bug is in pycairo, not screenlet!)
0.6.8
- lyrics searching bug fix, now it should really works, I promise :D
0.6.7
- update of lyrics engine: ALSong now work again (it stopped to work at all after they changed ip address), minilyrics has better encoding handling
- theme update

older logs in changelog file

12345678910
112
product-maker mruchunglv Oct 07 2016 3 bad
product-maker KrakenHimoto Jul 28 2012 9 excellent
product-maker MadeInKobaia Jul 09 2012 9 excellent
product-maker scsimodo Dec 29 2011 9 excellent
product-maker torturedutopian Sep 02 2011 9 excellent
product-maker stratok Jun 19 2011 9 excellent
product-maker dodjob Apr 25 2011 9 excellent
product-maker Ubuntumutu Dec 22 2010 9 excellent
product-maker mystica Nov 30 2010 9 excellent
product-maker olegue Nov 27 2010 9 excellent
product-maker erar123 Nov 20 2010 9 excellent
product-maker aledb Nov 12 2010 9 excellent
product-maker balakrishnan Sep 25 2010 9 excellent
Be the first to comment
MojoMan
Feb 12 2016
Hellow
Mar 04 2015
atenrok
Dec 05 2012
MadeInKobaia
Jul 09 2012
dodjob
Apr 25 2011
boamaod
Apr 07 2011
y3m3th
Mar 19 2011
marcocolombini
Jan 28 2011
mystica
Nov 30 2010
olegue
Nov 27 2010
milanacow
Oct 20 2010
oemhack
Jun 26 2010
peacewithall
May 29 2010
play3man
May 25 2010
AstroLinux
May 19 2010
sgl
Apr 23 2010
Milena
Apr 12 2010
simunic
Mar 02 2010
erar123
Feb 26 2010
Kreisverkehr
Feb 10 2010
microscopuce
Jan 30 2010
lianimator
Jan 22 2010
Naf71
Jan 22 2010
firecad2006
Jan 21 2010
balakrishnan
Dec 02 2009
Potet
Oct 21 2009
LaGaDesk
Sep 13 2009
chriskin
Sep 12 2009
CLEARview
Sep 11 2009
kaeltas
Sep 04 2009
unformatted
Aug 18 2009
victorlisboa
Aug 04 2009
switzak
Mar 09 2009
naaamo2004
Mar 08 2009
epsyl
Mar 08 2009
PhobosK
Mar 07 2009
4tis
Mar 05 2009
Scnd101
Feb 09 2009
File (click to download) Version Description Downloads Date Filesize DL OCS-Install MD5SUM
*Needs pling-store or ocs-url to install things
Pling
0 Affiliates
Details
license
version
0.7.2
updated Mar 30 2011
added Feb 03 2009
downloads 24h
0
mediaviews 24h 0
pageviews 24h 9