Page 5 of 22

Re: Lyricator v1.1.1 #31 (2010-12-16)

Posted: Wed Jan 05, 2011 6:55 am
by leschanz
Maybe I'm too stupid, but it seems that the "time out" function with my lyricator (MM version 3.2.2 / lyricator v.1.1.131 / win vista 32) does not work. as soon as it gets to a song, where it cannot find any lyrics (either it is an instrumental without any lyrics or it just cant find it though there certainly are any) it keeps on trying and never comes to a "time out" or skips over to the next song. that's why identifying my whole library or even just a single album is getting nearly impossible.

anyone having the same problem? or does anyone know any help?

Re: Lyricator v1.1.1 #31 (2010-12-16)

Posted: Wed Jan 05, 2011 7:47 am
by Guest
I used to have that problem, I UN checked the last 2 search boxes in .Tools/Options/Lyricator

and have not had that problem since,, runs great

Re: Lyricator v1.1.1 #31 (2010-12-16)

Posted: Wed Jan 05, 2011 8:09 am
by leschanz
thanks, great idea, works great now!

Re: Lyricator v1.1.1 #31 (2010-12-16)

Posted: Wed Jan 05, 2011 1:06 pm
by BlueDragon
does it work for you with MM4? I tried it but only got this result:

Image

Re: Lyricator v1.1.1 #31 (2010-12-16)

Posted: Wed Jan 05, 2011 10:44 pm
by Michel37
Guest wrote:I used to have that problem, I UN checked the last 2 search boxes in .Tools/Options/Lyricator

and have not had that problem since,, runs great
Which boxes did you uncheck?

Re: Lyricator v1.1.1 #31 (2010-12-16)

Posted: Wed Jan 05, 2011 11:36 pm
by Guest
I UN check the last 2 boxes..there were 5 . reading from top down.
if they were numbered it was 4 & 5
www.lyricsvip.com

www.lyrics-songs.com

Re: Lyricator v1.1.1 #31 (2010-12-16)

Posted: Wed Jan 05, 2011 11:39 pm
by Michel37
Thanks, it worked.

Re: Lyricator v1.1.1 #31 (2010-12-16)

Posted: Thu Jan 06, 2011 2:15 pm
by davidbspalding
Guys, if you can attach your Lyricator log file (found in your Windows temp folder, usually pointed to by the environment variable %temp%) after failed searches of LyrDb, that would help immensely.

Re: Lyricator v1.1.1 #31 (2010-12-16)

Posted: Thu Jan 06, 2011 6:52 pm
by jonp
Here you go....

Lyricator v1.1.1.31 started
Log: C:\Users\Main\AppData\Local\Temp\Lyricator.log
App: C:\Program Files\MediaMonkey\Scripts\Lyricator\
Settings:
tryAllArtists
tryCommaArtists
tryCleanupWhiteSpace
trySingleLineSearch = 'Instr'
trySingleLineReplace = '[Instrumental]'
tryParensA
tryBracketsA
tryBracesA
tryQuotesA
tryTheA
tryFeatA
trySplitArrayA = 'and;&'
tryParensT
tryBracketsT
tryBracesT
tryQuotesT
tryTheT
tryFeatT
tryBlackListT = 'Medley'
tryAZLyrics
tryLyricWikia
tryLyrDB
tryLyricsVIP

5 Tracks Selected
i[0] ID[15645] A[Jenny Morris] T[Light Hearted]
i[1] ID[15646] A[Jenny Morris] T[Pass It Over]
i[2] ID[15641] A[Jenny Morris] T[Beating On the Same Drum]
i[3] ID[15648] A[Jenny Morris] T[Tested Sentences]
i[4] ID[15644] A[Jenny Morris] T[Light Hearted Are You Ready]
Starting temp.html

Re: Lyricator v1.1.1 #31 (2010-12-16)

Posted: Fri Jan 07, 2011 10:28 am
by Goodog
Hi Guys

I'm having the same problem as BlueDragon with MM4, I unchecked the last two boxes as suggested but it didn't work for me. Strangely enough, I have MM4 installed on my PC in work and was experiencing the same problem but when I unchecked the boxes there it did work....any ideas guy?

Thanks and best regards

Goodog

Re: Lyricator v1.1.1 #31 (2010-12-16)

Posted: Fri Jan 07, 2011 5:58 pm
by nohitter151
the script doesn't work in MM4, there is already a post in the Wiki by the MM developer Jiri where he says it doesn't work, and why, and how to fix it...
See: http://www.mediamonkey.com/wiki/index.p ... tallations

Re: Lyricator v1.1.1 #31 (2010-12-16)

Posted: Fri Jan 07, 2011 6:48 pm
by Goodog
Hi NoHitter

Many thanks for th ereply and the advice however, when I change the script as shown in the wiki, I get the following error message...

File C:\Users etc\AppData\Roaming\MediaMonkey\Scripts\Auto\lyricator.vbs cannot be opened:
The file may be unavailable or you my not have permission to access it.

Before I changed the script the file opened but didn't work as described previously. What have I done wrong.

Thanks and best regards

Goodog

Re: Lyricator v1.1.1 #31 (2010-12-16)

Posted: Fri Jan 07, 2011 7:00 pm
by nohitter151
Don't know, I am not a scripter. You'll have to leave that for the author.

Re: Lyricator v1.1.1 #31 (2010-12-16)

Posted: Sat Jan 08, 2011 3:46 am
by Alex
First and foremost:
THANK YOU for this incredibly delicious script!! It's FRIGGIN' AWESOME!!!!!!!!!

I love it! I love it! I love it! I love it! I love it! I love it! I love it! I love it! I love it! I love it! I love it!

Second, I wanted to see if I could help out on the LyrDB thingie :) so here we go!

I think the script is choking on the LyrDB because the website might be down probably due to heavy traffic as when I try to visit the site here: http://www.lyrdb.com/ I get this:
Warning: mysql_connect() [function.mysql-connect]: Too many connections in /home/wwwroot/lyrdb/_ldb_conn.php on line 3
Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /home/wwwroot/lyrdb/_ldb_funcs.php on line 30
Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /home/wwwroot/lyrdb/_ldb_funcs.php on line 31
Warning: mysql_connect() [function.mysql-connect]: Too many connections in /home/wwwroot/lyrdb/_ldb_conn.php on line 3
Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /home/wwwroot/lyrdb/_ldb_funcs.php on line 30
Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /home/wwwroot/lyrdb/_ldb_funcs.php on line 31
Warning: mysql_connect() [function.mysql-connect]: Too many connections in /home/wwwroot/lyrdb/_ldb_conn.php on line 3
Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /home/wwwroot/lyrdb/_ldb_funcs.php on line 30
Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /home/wwwroot/lyrdb/_ldb_funcs.php on line 31
Parse error: syntax error, unexpected $end in /home/wwwroot/lyrdb/forum/pics/edit.jpg on line 117
Hell, even Google's Cache shows the errors!

If I were to venture a guess...
the script is probably stopping with LyrDB because the website is not timing out, it is posting back a response, albeit not the one that is wanted by the script. The script is failing to recognize the error and not kicking out of the attempt and it keeps on churning trying to figure out what happened to the lyrics...


I modded the lyricator.js and it seems to work now (it does not stall on LyrDB anymore).

ORIGINAL code

Code: Select all

var rSuccessLyrDB = function(html, xml) {
   var l = '';  var a = '';   var t = '';  var id = '';
   try {
      id = html.split('\\')[0].split('\n')[0];
      if(id.length != 0) {
          a = html.split('\\')[2].split('\n')[0];
          t = html.split('\\')[1].split('\n')[0];
          rLyrDB = new Request({method:'get', onSuccess: function(responseText) {l = cleanupLyrics(responseText.replace(/(\r\n|\n)/g, '<br>')) ; if(l) { l+= "<br><br><br>Lyrics provided by: LyrDB.com<br>Artist: " + a + "<br>Track: " + t}; whatNext(l, a, t);}});
          rLyrDB.host = 'http://webservices.lyrdb.com/getlyr.php?q=' + id

          rLyrDB.host = encodeURI(rLyrDB.host);
          rLyrDB.send({url: rLyrDB.host});
     } else {
        whatNext(null);
     }
   } catch(ex) {}
}
MODDED CODE

Code: Select all

var rSuccessLyrDB = function(html, xml) {
   var l = '';  var a = '';   var t = '';  var id = '';
   try {
      id = html.split('\\')[0].split('\n')[0];
      if(id.length != 0) {
          a = html.split('\\')[2].split('\n')[0];
          t = html.split('\\')[1].split('\n')[0];
          rLyrDB = new Request({method:'get', onSuccess: function(responseText) {l = cleanupLyrics(responseText.replace(/(\r\n|\n)/g, '<br>')) ; if(l) { l+= "<br><br><br>Lyrics provided by: LyrDB.com<br>Artist: " + a + "<br>Track: " + t}; whatNext(l, a, t);}});
          rLyrDB.host = 'http://webservices.lyrdb.com/getlyr.php?q=' + id

          rLyrDB.host = encodeURI(rLyrDB.host);
          rLyrDB.send({url: rLyrDB.host});
     } else {
        whatNext(null);
     }
   } catch(ex) {whatNext(null);}
}
The ONLY change I made was in the catch, I added whatNext(null); within the catch statement.
As you can see, the only change I made is that due to the weird page response from LyrDB, it was clearly having issues parsing the page and it was erroring out, however, the try-catch did not tell the script what to do in case of a catch! I added that simple snippet and now it correctly exits the try-catch after the error.

PLEASE NOTE:
Any of you that want to modify the script beware that this fix is an ugly, UGLY patch that relies on a parsing failure for the script to work. The proper fix should be to correctly parse the page for that MySQL connection error (or any error for that matter) and exit the function properly.

If you're not sure how to implement this patch, simply remove LyrDB from your checkboxes in the Lyricator settings for now, until the website is back up :) This will also prevent your Lyricator from getting stuck!

Alex.

Re: Lyricator v1.1.1 #31 (2010-12-16)

Posted: Sat Jan 08, 2011 5:03 pm
by Teknojnky
Teknojnky wrote:One thing I would love to see is an option to skip files which already have lyrics, that way I can select a bunch of files and have it only look for missing lyrics.

For anyone who would like this also, you can add the below snipit, but there is no toggle for it, so it will always skip files with lyrics (just clear the lyrics field if you want to reprocess them).

open the lyricator.vbs file in scripts\auto\lyricator.vbs after the section

Code: Select all

   Dim i
   Dim i2: i2 = 0
@ approx line # 487, insert

Code: Select all

   ' pre process track list, remove tracks with existing lyrics'
   i = 0
    Do While i < tracks.count
      SDB.ProcessMessages
      If tracks.item(i).lyrics <> "" Then
        tracks.delete(i)
      Else
        i = i + 1
      End If
   Loop
before the section

Code: Select all

   For i = 0 to tracks.count - 1
      SDB.ProcessMessages
      If SDB.Objects("LyricatorWB") is nothing Then
         abort = true
         Exit For
      End If
restart MM if its running