Kodi Community Forum

Full Version: CU LRC Lyrics
You're currently viewing a stripped down version of our content. View the full version with proper formatting.

use the kodi.tv repo to install it.

cu.lrclyrics is based on the cu and lrc lyrics scripts.

credits to everyone who worked on these scripts before:
EnderW, Nuka1195, Taxigps, amet, ronie, yannrouillard

the script first tries to find synchronised (lrc) lyrics.
if no lrc lyrics are available, it will continue to search for unsynchronised (text) lyrics.
lrc lyrics will automatically scroll in kodi, text based lyrics will not.

depending on which options you've enabled, the script searches for lyrics in this order:
  1. embedded lrc lyrics
  2. lrc lyrics file
  3. MiniLyrics scraper (lrc)
  4. TTplayer scraper (lrc)
  5. Baidu scraper (lrc)
  6. GomAudio scraper (lrc)
  7. embedded text lyrics
  8. text lyrics file
  9. LyricWiki scraper (text)
  10. Genius scraper (text)
  11. LyricsMode scraper (text)
  12. LetsSingIt scraper (text)
  13. Lyrics.com scraper (text)
  14. DarkLyrics scraper (text)

when the scripts downloads lyrics through one of the scrapers,
you can optionally save them to a file for future use.

If you have issues with this addon, please post a Debug Log!

1 enable debug logging in kodi
2 enable debug logging in the addon settings
3 restart kodi
4 reproduce the issue
5 post the entire kodi.log file on http://paste.ubuntu.com/

You will receive NO support without a debug log.
Cool gonna try asap, guess lrc lyrics isnt neede anymore thenThanks!
Alright!!!! Smile
I am interested in how you chose the name? Smile

Brilliant with the auto-scroll feature. Kudos to Taxigps, Amet and all the contributors Smile
(2012-12-07, 18:09)amet Wrote: [ -> ]I am interested in how you chose the name? Smile

1+1=2Big Grin
I don't know how feasible this is but doesn't hurt to ask Smile

I'd like to be able to use the lyrics for AWXi web interface. JSONRPC is out for now but I was wondering if it would be possible to do anything with the VFS. For example you can browse the other addons like:
{"jsonrpc": "2.0", "method": "Files.GetDirectory", "params" : { "directory" : "plugin://plugin.video.iplayer/?content_type=audio", "media" : "music", "properties": [ "file" ] }, "id": 1}
If you could create a "Now playing" node or similar with the current lyrics in I could use that.

Hope that makes sense?
(2012-12-09, 01:24)Mizaki Wrote: [ -> ]Hope that makes sense?

not to me Smile
but that's mainly because i have little to no knowledge of the plugin system.

cu lrc lyrics is a script, and i don't think the code snippet you've provided can be used with scripts.

i think we could provide the current lyrics as a window property infolabel,
but i have no idea if it's possible to retrieve infolabels trough a webinterface.
There is XBMC.GetInfoLabels available with the JSONAPI which sounds good to me Smile

Ideally I'd quite like to be able to do the follow along as well, like the script. I guess you can just put the raw text in the info label?
(2012-12-10, 23:59)Mizaki Wrote: [ -> ]There is XBMC.GetInfoLabels available with the JSONAPI which sounds good to me Smile

Ideally I'd quite like to be able to do the follow along as well, like the script. I guess you can just put the raw text in the info label?

i'v added $INFO[Window(Home).Property(culrc.lyrics)] for you to test with.


it's indeed the raw text, so for lrc based lyrics it will contain the timing info.
I can get the text just fine. In case anyone else wants to try it I did:
{"jsonrpc": "2.0", "method": "XBMC.GetInfoLabels", "params" : { "labels" : [ "Window(Home).Property(culrc.lyrics)" ] }, "id": 1}

I just need to see if I can activate the script remotely and all should be good. Thanks!
Is it possible to add the file name in there somewhere and/or clear it on song change and close? A tag to say if the window is open or not. I don't really have anyway to tell atm. Also, the lyrics source so I can give credit?

Actually it looks like the GUI doesn't clear on song change so, you are left with the lyrics for the last song until the new ones are found or not.

If I get chance (unless someone wants to do it first) over the break I'll see if I can do a format on the fly to JSON. Something like:
{ "open": true, "source": "lyrics.com", "artist": "Greatest Band EVER!", "album": "Best album!", "title": "Best song EVER!", "lyrics": "this is the best song ever! You've never heard a song as good as this...", "timecode": true }
i've added Window(Home).Property(culrc.source)
and Window(Home).Property(culrc.running)
running will return 'true' if the script is running and empty if not.

the filename can already be retrieved by using something like this i think:
{"jsonrpc": "2.0", "method": "XBMC.GetInfoLabels", "params" : { "labels" : [ "Player.Filenameandpath " ] }, "id": 1}

or maybe using one of the Player.* / Playlist.* methods in json-rpc
That's great.

I meant the file name of the lyric file so I could compare with the current title. However, now it looks like the next song is pre-fetched (and always was) so I'm confused as I'm sure I saw the GUI with the lyrics of the previous song as it was searching for the current one...
I've been using the LRC plugin, which worked fine, but a few wishes. One of which would be to be able to have it try to find another version of the lyrics incase you chose the wrong one. I've had it when I get a whole long list of files to choose from, I select the first one and the lyrics are right, just the timing is way off but I have no way of selecting another. Also, why can't we save it to the same place the mp3 is with the same name? my naming convention is track number - song name. The plugin just saves song name in a different folder.