-
 KDE-Apps.org Applications for the KDE-Desktop 
 GTK-Apps.org Applications using the GTK Toolkit 
 GnomeFiles.org Applications for GNOME 
 MeeGo-Central.org Applications for MeeGo 
 CLI-Apps.org Command Line Applications 
 Qt-Apps.org Free Qt Applications 
 Qt-Prop.org Proprietary Qt Applications 
 Maemo-Apps.org Applications for the Maemo Plattform 
 Java-Apps.org Free Java Applications 
 eyeOS-Apps.org Free eyeOS Applications 
 Wine-Apps.org Wine Applications 
 Server-Apps.org Server Applications 
 apps.ownCloud.com ownCloud Applications 
--
-
 KDE-Look.org Artwork for the KDE-Desktop 
 GNOME-Look.org Artwork for the GNOME-Desktop 
 Xfce-Look.org Artwork for the Xfce-Desktop 
 Box-Look.org Artwork for your Windowmanager 
 E17-Stuff.org Artwork for Enlightenment 
 Beryl-Themes.org Artwork for the Beryl Windowmanager 
 Compiz-Themes.org Artwork for the Compiz Windowmanager 
 EDE-Look.org Themes for your EDE Desktop 
--
-
 Debian-Art.org Stuff for Debian 
 Gentoo-Art.org Artwork for Gentoo Linux 
 SUSE-Art.org Artwork for openSUSE 
 Ubuntu-Art.org Artwork for Ubuntu 
 Kubuntu-Art.org Artwork for Kubuntu 
 LinuxMint-Art.org Artwork for Linux Mint 
 Frugalware-Art.org Artwork for Frugalware Linux 
 Arch-Stuff.org Artwork and Stuff for Arch Linux 
 Fedora-Art.org Artwork for Fedora Linux 
 Mandriva-Art.org Artwork for Mandriva Linux 
--
-
 KDE-Files.org Files for KDE Applications 
 OpenTemplate.org Documents for OpenOffice.org
 GIMPStuff.org Files for GIMP
 InkscapeStuff.org Files for Inkscape
 ScribusStuff.org Files for Scribus
 BlenderStuff.org Textures and Objects for Blender
 VLC-Addons.org Themes and Extensions for VLC
--
-
 KDE-Help.org Support for your KDE Desktop 
 GNOME-Help.org Support for your GNOME Desktop 
 Xfce-Help.org Support for your Xfce Desktop 
--
openDesktop.orgopenDesktop.org:   Applications   Artwork   Linux Distributions   Documents    LinuxDaily.com    Linux42.org    OpenSkillz.com    Open-PC.com   
Compiz-Themes.org - The Compiz Community
Compiz-Themes.orgCompiz-Themes.org

 Apr 19 2014  
 Not logged in  
Compiz-Themes.org
 Home    Add Artwork   Forum   Groups   Knowledge   Events   Jobs   Users   Register   Login-


Sponsoring


-
- Content .- Fans (44) . 

Lyrics screenlet

   0.7.2  

Screenlet

Score 79%
Lyrics screenlet
zoom


Downloads:  28967
Submitted:  Feb 3 2009
Updated:  Mar 30 2011

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




    Changelog:

    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




    LicenseGPL
    (LyricsScreenlet 0.7.2)
    (LyricsScreenlet 0.6.9 (stable))
    Send to a friend
    Subscribe
    Other  Artwork  from dencer
    Report inappropriate content



    goto page: prev  ... 10  11  12  13  14  15  16  17  18  19  20 

    -
    .

     :)

     
     by dodjob on: Apr 25 2011
     
    Score 50%

    How cool is that!!!
    :)
    Thanks a lot for this awesome screenlet. Works flawlessly on lucid and maverick 64!
    Now I just have to find a typoclock for my desktop and I will be trully happy.
    One option would be nevertheless interesting is that the screenlet remains completely hided is when we hear no music ;-)
    Gruß,
    H.


    Reply to this

    -

     Re: :)

     
     by dencer on: Apr 27 2011
     
    Score 50%

    Hi, try option "Use Tray Icon", that should make the trick :)


    Reply to this

    -

     Re: Re: :)

     
     by dodjob on: May 1 2011
     
    Score 50%

    it works! :) thanks a lot. Ok I'm not a big fan from system tray icons.. but it's way better than the big "transparent" icon on my desktop. Thanks again for your work!
    Gruß,
    H.


    Reply to this

    -

     report on beta 4

     
     by marcocolombini on: May 10 2011
     
    Score 50%

    ok, the sleepy bug seems to have gone. Lyrics has run for two days without a restart and it is still scrolling correctly.

    The problem with accented author persists also in this version: the lyrics saved under an accented path it is saved again and again every time the song is played. It is not found on disk where the screenlet has saved it previously. Btw, I think that it should be saved in the accented path (I assume that one who plays accented authors wants accented paths). What it could be really useful is to search on the net also without accents. Could you use wildcards in your searches? If so, I have the feeling that much more lyrics will be found on the net if accents are masked.

    Since you are on debugging I would like to report you a few minor bugs, too.

    1) When i switch rapidly between two song (one with lyrics on disk and one without) sometimes the screenlet get minimized when lyrics are present. If I then click the icon in the tray it is displayed again and scrolls correctly.

    2) The debug output is different if I issue a restart from the manager or a stop/start. In the former case it is longer (with details on the search and a lot of "get elapsed") in the latter is shorter. Is this correct?

    3) Some time ago, I mentioned the possibility of making use of an offset field in the lyrics file. Is this possible? Sometimes the lyrics are correct but the timing is bad.

    Thanx again for your time and effort.


    Reply to this

    -

     debug output

     
     by marcocolombini on: May 10 2011
     
    Score 50%

    here is the (extended) output for the accented author case. Looks like there is a slash missing in the lyrics file path when searching on disk.

    DEBUG:LyricsScreenlet:######## Song Changed: /d1/users/col/IPOD/Fabrizio De Andre/In Direzione Ostinata E Contraria/01_-_Amore Che Vieni Amore Che Vai.mp3
    Start TimeLine
    is_playing
    CHANGE LYRICS
    STOP ANIMATION
    SET TIME 200.000000
    STOP ANIMATION
    Song Info:
    {'album': dbus.String(u'In Direzione Ostinata E Contraria', variant_level=1), 'artist': dbus.String(u'Fabrizio De Andr\xe9', variant_level=1), 'file': '/d1/users/col/IPOD/Fabrizio De Andre/In Direzione Ostinata E Contraria/01_-_Amore Che Vieni Amore Che Vai.mp3', 'title': dbus.String(u'Amore Che Vieni Amore Che Vai', variant_level=1)}
    Fabrizio De André/In Direzione Ostinata E Contraria/Amore Che Vieni Amore Che Vai.lrc
    {'album': dbus.String(u'In Direzione Ostinata E Contraria', variant_level=1), 'artist': dbus.String(u'Fabrizio De Andr\xe9', variant_level=1), 'file': '/d1/users/col/IPOD/Fabrizio De Andre/In Direzione Ostinata E Contraria/01_-_Amore Che Vieni Amore Che Vai.mp3', 'title': dbus.String(u'Amore Che Vieni Amore Che Vai', variant_level=1)}
    DEBUG:LyricsScreenlet:searching lyrics on disk
    ....... searching on disk
    /d1/users/col/LYRICS Fabrizio De André/In Direzione Ostinata E Contraria/Amore Che Vieni Amore Che Vai.lrc
    Fabrizio De André
    matching_folders: []
    amore che vieni amore che vai.lrc
    DEBUG:LyricsScreenlet:lyrics should be here: None
    Nothing on disk
    96e5da11d9c8008cc9b94457c7c57056
    search on net
    start alsong
    start minilyrics
    minilyrics
    start lrcdb
    start lyricsscreenlet
    get elapsed
    ############ Elapsed Event
    ELAPSED 0 fading = False
    DEBUG:LyricsScreenlet:set elapsed: 0.868
    SET TIME 868.000000
    STOP ANIMATION
    DEBUG:LyricsScreenlet:redraw in onElapsed
    not well-formed (invalid token): line 1, column 0
    Minilyrics Lyrics Count: 0
    get elapsed
    {'confidence': 1.0, 'encoding': 'ascii'}
    TAGS {}
    DEBUG:LyricsScreenlet:MINIMIZE maximalizing screenlet
    <gtk.Window object at 0x2e805f0 (GtkWindow at 0x2f8d030)>
    <gtk.gdk.Window object at 0x2e99b40 (GdkWindow at 0x2a6d480)>

    deiconify

    DEBUG:LyricsScreenlet:writing maximalizing state to config
    NORMAL SHAPE
    SETTING FIRST LYRICS
    Set Lyrics translation=None enabled=False
    translate Lyrics
    False
    None
    STOP ANIMATION
    0
    DEBUG:LyricsScreenlet:save lyrics on disk
    INFO:LyricsScreenlet:writing lyrics into file: /d1/users/col/LYRICS/Fabrizio De André/In Direzione Ostinata E Contraria/Amore Che Vieni Amore Che Vai.lrc
    end of response
    ALSong Server1 Lyrics Count: 1
    get elapsed
    get elapsed
    INFO:LyricsScreenlet:lyrics engine finished!
    get elapsed
    DEBUG:LyricsScreenlet:unfocus 0.0
    NORMAL SHAPE
    get elapsed


    Reply to this

    -

     Re: debug output

     
     by dencer on: May 12 2011
     
    Score 50%

    try this http://dl.dropbox.com/u/4466860/Lyrics-beta5.tar.gz
    Now I have limited testing ability cause I broke pygtk bindings :P, but it should finally work.
    2) yes it sometimes behave weird, I can look at this later
    3) I added support for offset tag some time ago, when I fix my pygtk issues I'll check it. But still, timing isn't accurate now on some players (it's max. +/- 1s). But it's possible to do it better


    Reply to this

    -

     bux fixed

     
     by marcocolombini on: May 12 2011
     
    Score 50%

    Ok, you fixed it! Thanx a lot. The other bugs are very minor so, in my opinion, they can wait. As for the offset field, it works correctly but, if I am right, the value is treated as if expressed in seconds. Accordingly to the lyrics file specification (Wikipedia LRC (file format)) it should be in milliseconds. The sign is correct.

    If you plan to improve the way accented fields are searched on the net and need some test, feel free to contact me directly at

    col AT dicat.unige.it

    Best
    Marco


    Reply to this

    -

     Re: bux fixed

     
     by dencer on: May 16 2011
     
    Score 50%

    That's easy fixes, here should be offset fixed in milliseconds and searching will be performed on metadata without accent http://dl.dropbox.com/u/4466860/Lyrics-beta6.tar.gz. I did small test and it seems that it helps sometimes, but I let it on you to perform better testing :)


    Reply to this

    -

     Report on beta 6

     
     by marcocolombini on: May 17 2011
     
    Score 50%

    Hi dencer,

    checked the offset, works nicely. Only minor bug: at the beginning, for some time (the offset!) the last lyric in the file is displayed. The title etc (with timestamp 0:00) are displayed after the offset. Could you eliminate this and (possibly) do not offset any 0:00 field?

    The accented problem isn't completely fixed: when I played an accented song (lyrics on disk found by your screenlet some time ago) it is not found on the net and, worse, is not found on disk, too. Looks like the same slash missing in the file path as before. Strangely enough, the one i tested previously is correctly found on disk.

    I include the debug for the two songs below.

    I have not seen any improvement yet, for the search on the net with wildcards. Would it be possible to have some debug output on the fields that are actually searched? Without it I can't see if lyrics are not found because they are not there or because of the accents.

    Thanx a lot

    >>>> SONG FOUND ON DISK

    DEBUG:LyricsScreenlet:######## Song Changed: /d1/users/col/IPOD/Fabrizio De Andre/In Direzione Ostinata E Contraria/01_-_Amore Che Vieni Amore Che Vai.mp3
    Start TimeLine
    is_playing
    CHANGE LYRICS
    STOP ANIMATION
    SET TIME 200.000000
    STOP ANIMATION
    Song Info:
    {'album': dbus.String(u'In Direzione Ostinata E Contraria', variant_level=1), 'artist': dbus.String(u'Fabrizio De Andr\xe9', variant_level=1), 'file': '/d1/users/col/IPOD/Fabrizio De Andre/In Direzione Ostinata E Contraria/01_-_Amore Che Vieni Amore Che Vai.mp3', 'title': dbus.String(u'Amore Che Vieni Amore Che Vai', variant_level=1)}
    Fabrizio De André/In Direzione Ostinata E Contraria/Amore Che Vieni Amore Che Vai.lrc
    {'album': dbus.String(u'In Direzione Ostinata E Contraria', variant_level=1), 'artist': dbus.String(u'Fabrizio De Andr\xe9', variant_level=1), 'file': '/d1/users/col/IPOD/Fabrizio De Andre/In Direzione Ostinata E Contraria/01_-_Amore Che Vieni Amore Che Vai.mp3', 'title': dbus.String(u'Amore Che Vieni Amore Che Vai', variant_level=1)}
    DEBUG:LyricsScreenlet:searching lyrics on disk
    ....... searching on disk
    /d1/users/col/LYRICS Fabrizio De André/In Direzione Ostinata E Contraria/Amore Che Vieni Amore Che Vai.lrc
    matching_folders: ['/d1/users/col/LYRICS/Fabrizio De Andr\xc3\xa9/In Direzione Ostinata E Contraria']
    amore che vieni amore che vai.lrc
    DEBUG:LyricsScreenlet:lyrics should be here: /d1/users/col/LYRICS/Fabrizio De André/In Direzione Ostinata E Contraria/Amore Che Vieni Amore Che Vai.lrc
    lyrics from file: /d1/users/col/LYRICS/Fabrizio De André/In Direzione Ostinata E Contraria/Amore Che Vieni Amore Che Vai.lrc
    TAGS {}

    >>>>>>>>>SONG NOT FOUND ON DISK

    DEBUG:LyricsScreenlet:######## Song Changed: /d1/users/col/IPOD/Fabrizio De Andre/In Direzione Ostinata E Contraria/10_-_Khorakhane (A Forza Di Essere Vento).mp3
    Start TimeLine
    is_playing
    get elapsed
    CHANGE LYRICS
    STOP ANIMATION
    SET TIME 200.000000
    STOP ANIMATION
    Song Info:
    {'album': dbus.String(u'In Direzione Ostinata E Contraria', variant_level=1), 'artist': dbus.String(u'Fabrizio De Andr\xe9', variant_level=1), 'file': '/d1/users/col/IPOD/Fabrizio De Andre/In Direzione Ostinata E Contraria/10_-_Khorakhane (A Forza Di Essere Vento).mp3', 'title': dbus.String(u'Khorakhan\xe9 (A Forza Di Essere Vento)', variant_level=1)}
    Fabrizio De André/In Direzione Ostinata E Contraria/Khorakhané (A Forza Di Essere Vento).lrc
    {'album': dbus.String(u'In Direzione Ostinata E Contraria', variant_level=1), 'artist': dbus.String(u'Fabrizio De Andr\xe9', variant_level=1), 'file': '/d1/users/col/IPOD/Fabrizio De Andre/In Direzione Ostinata E Contraria/10_-_Khorakhane (A Forza Di Essere Vento).mp3', 'title': dbus.String(u'Khorakhan\xe9 (A Forza Di Essere Vento)', variant_level=1)}
    DEBUG:LyricsScreenlet:searching lyrics on disk
    ....... searching on disk
    /d1/users/col/LYRICS Fabrizio De André/In Direzione Ostinata E Contraria/Khorakhané (A Forza Di Essere Vento).lrc
    matching_folders: ['/d1/users/col/LYRICS/Fabrizio De Andr\xc3\xa9/In Direzione Ostinata E Contraria']
    khorakhané (a forza di essere vento).lrc
    DEBUG:LyricsScreenlet:lyrics should be here: None
    Nothing on disk
    1636089108a3cb96db6213c250ec046a
    search on net

    >>>>>>>>>> HERE IS THE SEARCH RESULT

    (I have removed some "get elapsed"

    ############ Elapsed Event
    ELAPSED 1 fading = False
    DEBUG:LyricsScreenlet:set elapsed: 1.366
    SET TIME 1366.000000
    STOP ANIMATION
    DEBUG:LyricsScreenlet:redraw in onElapsed
    ALSong Server2 Lyrics Count: 0
    start alsong
    start minilyrics
    minilyrics
    start lrcdb
    start lyricsscreenlet
    not well-formed (invalid token): line 1, column 0
    Minilyrics Lyrics Count: 0
    end of response
    ALSong Server1 Lyrics Count: 0
    end of response
    ALSong Server2 Lyrics Count: 0
    INFO:LyricsScreenlet:lyrics engine finished!

    >>>>>>> Is it the "not well-formed" ok?


    Reply to this

    -

     Re: Report on beta 6

     
     by dencer on: May 18 2011
     
    Score 50%

    Yeah, skipping timestamp with 0:00 make it better. I'll look at searching again, but it must be another thing as missing filename separator, that's only my confusing logging output printing two paths in the same line


    Reply to this

    -
    .

     Re: Report on beta 6

     
     by dencer on: May 24 2011
     
    Score 50%

    here is an another version you can play with http://dl.dropbox.com/u/4466860/Lyrics-beta7.tar.gz


    Reply to this

    -

     Exception (conn refused)

     
     by marcocolombini on: May 19 2011
     
    Score 50%

    After this the search on the net stopped working until a restart was issued.

    INFO:LyricsScreenlet:lyrics engine finished!
    Exception in thread Thread-533:
    Traceback (most recent call last):
    File "/usr/lib64/python2.7/threading.py", line 530, in __bootstrap_inner
    self.run()
    File "/usr/share/screenlets/Lyrics/lyricsengine/engine.py", line 29, in run
    self.finishCallback()
    File "/usr/share/screenlets/Lyrics/lyricsengine/engine.py", line 167, in onDownloaderFinish
    self.finishCallback()
    File "/usr/share/screenlets/Lyrics/LyricsScreenlet.py", line 572, in onEngineFinish
    self.lyricsEngine.reportMissingLyrics(self.songInfo)
    File "/usr/share/screenlets/Lyrics/lyricsengine/engine.py", line 214, in reportMissingLyrics
    response = urllib2.urlopen(req)
    File "/usr/lib64/python2.7/urllib2.py", line 126, in urlopen
    return _opener.open(url, data, timeout)
    File "/usr/lib64/python2.7/urllib2.py", line 391, in open
    response = self._open(req, data)
    File "/usr/lib64/python2.7/urllib2.py", line 409, in _open
    '_open', req)
    File "/usr/lib64/python2.7/urllib2.py", line 369, in _call_chain
    result = func(*args)
    File "/usr/lib64/python2.7/urllib2.py", line 1173, in http_open
    return self.do_open(httplib.HTTPConnection, req)
    File "/usr/lib64/python2.7/urllib2.py", line 1148, in do_open
    raise URLError(err)
    URLError: <urlopen error [Errno 111] Connection refused>

    DEBUG:LyricsScreenlet:MINIMIZING minimalizing screenlet
    **************************
    DEBUG:LyricsScreenlet:######## Song Changed: /d1/users/col/IPOD/Paolo Conte/Una faccia in prestito/17_-_L'incantatrice.mp3
    DEBUG:LyricsScreenlet:searching lyrics on disk
    DEBUG:LyricsScreenlet:lyrics should be here: None
    DEBUG:LyricsScreenlet:set elapsed: 0.699
    DEBUG:LyricsScreenlet:redraw in onElapsed
    DEBUG:LyricsScreenlet:######## Song Changed: /d1/users/col/IPOD/Zucchero/Snack Bar Budapest/08_-_Sei di mattino.mp3



    Reply to this

    -

     exception error

     
     by marcocolombini on: May 23 2011
     
    Score 50%

    Same error happened, this time with an URL timeout. Found another (very minor) bug: when you stop player with lyrics displayed, they are reset to the beginning and keep going 'til lyrics end, instead of stopping. Lyrics should display some "no song playing" message and go to tray, instead.

    This is another thing you can look at later, anyway.

    Bye
    Marco


    Reply to this

    -

     Report on beta 7

     
     by marcocolombini on: May 25 2011
     
    Score 50%

    Hi dencer,

    tried the new version with the same accented two songs and both lyrics are now found. Hope this ends the accent bug.

    What's bothering me now is the exception error I mentioned in my previous messages. It seems to appear more often than before (or perhaps it is just me!). After the exception the screenlet behaves strangely: the "lyrics engine finished!" message is not displayed anymore if song are changed (even if I think I've seen a new lyrics saved to disk, but I may be wrong) and sometimes the "searching" stamp is displayed forever. When I see it, I usually stop/start and searching on the net starts again with no timeout or conn problems.

    Best
    Marco


    Reply to this

    goto page: prev  ... 10  11  12  13  14  15  16  17  18  19  20 

    Add commentBack






    -

    Copyright 2007-2014 Compiz-Themes.org Team  Legal Notice
    All rights reserved. Compiz-Themes.org is not liable for any content or goods on this site.
    You can find our FAQ here.
    All contributors are responsible for the lawfulness of their uploads.
    Please send us a notice if you spot an ABUSE of the website.
    Information about advertising in Compiz-Themes.org.
    Developers can use our public webservice interface. More information here: public api
    For further information or comments on this site, please send us a message
    Compiz and the Compiz Logo are trademarks of the Compiz Project.
    Content RSS   
    Events RSS