From: <sa...@us...> - 2009-07-01 21:15:33
|
Revision: 2974 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=2974&view=rev Author: saamand Date: 2009-07-01 21:15:19 +0000 (Wed, 01 Jul 2009) Log Message: ----------- Version 1.32 Modified Paths: -------------- trunk/plugins/MyLyrics/LyricsEngine/LyricsController.cs trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/Actionext.cs trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/HotLyrics.cs trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/LrcFinder.cs trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/LyrDB.cs trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/Lyrics007.cs trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/LyricsOnDemand.cs trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/SeekLyrics.cs trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/Wiki.cs trunk/plugins/MyLyrics/LyricsEngine/Properties/AssemblyInfo.cs trunk/plugins/MyLyrics/My Lyrics/MyLyrics Configuration/About.Designer.cs trunk/plugins/MyLyrics/My Lyrics/MyLyrics Configuration/MyLyricsSetup.cs trunk/plugins/MyLyrics/My Lyrics/Properties/AssemblyInfo.cs trunk/plugins/MyLyrics/My Lyrics/change log.txt Modified: trunk/plugins/MyLyrics/LyricsEngine/LyricsController.cs =================================================================== --- trunk/plugins/MyLyrics/LyricsEngine/LyricsController.cs 2009-07-01 19:42:17 UTC (rev 2973) +++ trunk/plugins/MyLyrics/LyricsEngine/LyricsController.cs 2009-07-01 21:15:19 UTC (rev 2974) @@ -151,10 +151,10 @@ public void AddNewLyricSearch(string artist, string title, string strippedArtistName) { - ++m_noOfCurrentSearches; + if (lyricsSites.Length > 0 && !string.IsNullOrEmpty(artist) && !string.IsNullOrEmpty(title)) + { + ++m_noOfCurrentSearches; - if (lyricsSites.Length > 0) - { // create worker thread instance ThreadStart threadInstance = delegate { @@ -168,6 +168,10 @@ lyricSearchThread.Start(); threadList.Add(lyricSearchThread); } + else + { + return; + } } Modified: trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/Actionext.cs =================================================================== --- trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/Actionext.cs 2009-07-01 19:42:17 UTC (rev 2973) +++ trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/Actionext.cs 2009-07-01 21:15:19 UTC (rev 2974) @@ -27,11 +27,15 @@ timer = new System.Timers.Timer(); artist = LyricUtil.RemoveFeatComment(artist); - artist = LyricUtil.TrimForParenthesis(artist); artist = artist.Replace(" ", "_"); - title = LyricUtil.RemoveFeatComment(title); title = LyricUtil.TrimForParenthesis(title); title = title.Replace(" ", "_"); + + if (string.IsNullOrEmpty(artist) || string.IsNullOrEmpty(title)) + { + return; + } + string urlString = "http://www.actionext.com/names_" + artist[0] + "/" + artist + "_lyrics/" + title + ".html"; urlString = urlString.ToLower(); Modified: trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/HotLyrics.cs =================================================================== --- trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/HotLyrics.cs 2009-07-01 19:42:17 UTC (rev 2973) +++ trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/HotLyrics.cs 2009-07-01 21:15:19 UTC (rev 2974) @@ -27,7 +27,6 @@ timer = new System.Timers.Timer(); artist = LyricUtil.RemoveFeatComment(artist); - artist = LyricUtil.TrimForParenthesis(artist); artist = LyricUtil.CapatalizeString(artist); artist = artist.Replace(" ", "_"); @@ -46,7 +45,6 @@ // French letters artist = artist.Replace("\xE9", "%E9"); - title = LyricUtil.RemoveFeatComment(title); title = LyricUtil.TrimForParenthesis(title); title = LyricUtil.CapatalizeString(title); @@ -83,10 +81,13 @@ // French letters title = title.Replace("\xE9", "%E9"); - string firstLetter = ""; - if (artist.Length > 0) - firstLetter = artist[0].ToString(); + if (string.IsNullOrEmpty(artist) || string.IsNullOrEmpty(title)) + { + return; + } + string firstLetter = artist[0].ToString(); + string urlString = "http://www.hotlyrics.net/lyrics/" + firstLetter + "/" + artist + "/" + title + ".html"; LyricsWebClient client = new LyricsWebClient(); Modified: trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/LrcFinder.cs =================================================================== --- trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/LrcFinder.cs 2009-07-01 19:42:17 UTC (rev 2973) +++ trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/LrcFinder.cs 2009-07-01 21:15:19 UTC (rev 2974) @@ -6,6 +6,7 @@ using LyricsEngine; using System.Data; using System.Diagnostics; +using System.Net; namespace LyricsEngine.LyricSites { @@ -17,7 +18,9 @@ public static bool Abort; public static string Domain = null; + public static bool WebExceptionOccured = false; + public LrcFinder() { @@ -36,9 +39,18 @@ try { - lrcFinder.Url = GetUrl(); + string url = GetUrl(); - lrc = lrcFinder.FindLRC(this.artist, this.title); + if (url == null) + { + lrc = null; + } + else + { + lrcFinder.Url = GetUrl(); + + lrc = lrcFinder.FindLRC(this.artist, this.title); + } } catch (Exception e) { @@ -71,9 +83,18 @@ try { - lrcFinder.Url = GetUrl(); + string url = GetUrl(); - lrcs = lrcFinder.FindLRCs(this.artist, this.title); + if (url == null) + { + lrcs = null; + } + else + { + lrcFinder.Url = GetUrl(); + + lrcs = lrcFinder.FindLRCs(this.artist, this.title); + } } catch { @@ -102,10 +123,20 @@ try { - lrcFinder.Url = GetUrl(); - string result = lrcFinder.SaveLRC(lrcFile); - return result.Equals("DONE"); + string url = GetUrl(); + + if (url == null) + { + return false; + } + else + { + lrcFinder.Url = GetUrl(); + + string result = lrcFinder.SaveLRC(lrcFile); + return result.Equals("DONE"); + } } catch { @@ -119,10 +150,19 @@ try { - lrcFinder.Url = GetUrl(); + string url = GetUrl(); - string result = lrcFinder.SaveLRCWithGuid(lrcFile, guid); - return result.Equals("DONE"); + if (url == null) + { + return false; + } + else + { + lrcFinder.Url = GetUrl(); + + string result = lrcFinder.SaveLRCWithGuid(lrcFile, guid); + return result.Equals("DONE"); + } } catch { @@ -134,14 +174,28 @@ { //Domain = "http://testLRCFinder.profiler.nl"; - if (string.IsNullOrEmpty(Domain)) + if (WebExceptionOccured) { - string[] domains = lrcFinder.NewDomain(); - Random r = new Random(); - Domain = domains[r.Next(domains.Length)] as string; + return null; } - return Domain + @"/LrcFinder.asmx"; + try + { + + if (string.IsNullOrEmpty(Domain)) + { + string[] domains = lrcFinder.NewDomain(); + Random r = new Random(); + Domain = domains[r.Next(domains.Length)] as string; + } + + return Domain + @"/LrcFinder.asmx"; + } + catch (WebException e) + { + WebExceptionOccured = true; + return null; + } } } Modified: trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/LyrDB.cs =================================================================== --- trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/LyrDB.cs 2009-07-01 19:42:17 UTC (rev 2973) +++ trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/LyrDB.cs 2009-07-01 21:15:19 UTC (rev 2974) @@ -30,8 +30,6 @@ m_EventStop_SiteSearches = eventStop_SiteSearches; artist = LyricUtil.RemoveFeatComment(artist); - artist = LyricUtil.TrimForParenthesis(artist); - title = LyricUtil.RemoveFeatComment(title); title = LyricUtil.TrimForParenthesis(title); //string urlString = string.Format("http://www.lyrdb.com/lookup.php?q={0}|{1}&for=match", artist, title); string urlString = string.Format("http://webservices.lyrdb.com/lookup.php?q={0}%7c{1}&for=match", artist, title); Modified: trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/Lyrics007.cs =================================================================== --- trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/Lyrics007.cs 2009-07-01 19:42:17 UTC (rev 2973) +++ trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/Lyrics007.cs 2009-07-01 21:15:19 UTC (rev 2974) @@ -28,9 +28,7 @@ timer = new System.Timers.Timer(); artist = LyricUtil.RemoveFeatComment(artist); - artist = LyricUtil.TrimForParenthesis(artist); artist = artist.Replace("#", ""); - title = LyricUtil.RemoveFeatComment(title); title = LyricUtil.TrimForParenthesis(title); title = title.Replace("#", ""); Modified: trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/LyricsOnDemand.cs =================================================================== --- trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/LyricsOnDemand.cs 2009-07-01 19:42:17 UTC (rev 2973) +++ trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/LyricsOnDemand.cs 2009-07-01 21:15:19 UTC (rev 2974) @@ -27,7 +27,6 @@ timer = new System.Timers.Timer(); artist = LyricUtil.RemoveFeatComment(artist); - artist = LyricUtil.TrimForParenthesis(artist); artist = LyricUtil.DeleteSpecificChars(artist); artist = artist.Replace(" ", ""); artist = artist.Replace("The ", ""); @@ -38,7 +37,6 @@ // Cannot find lyrics contaning non-English letters! - title = LyricUtil.RemoveFeatComment(title); title = LyricUtil.TrimForParenthesis(title); title = LyricUtil.DeleteSpecificChars(title); title = title.Replace(" ", ""); @@ -57,10 +55,13 @@ title = title.ToLower(); - string firstLetter = ""; - if (artist.Length > 0) - firstLetter = artist[0].ToString(); + if (string.IsNullOrEmpty(artist) || string.IsNullOrEmpty(title)) + { + return; + } + string firstLetter = artist[0].ToString(); + int firstNumber = 0; if (int.TryParse(firstLetter, out firstNumber)) { Modified: trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/SeekLyrics.cs =================================================================== --- trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/SeekLyrics.cs 2009-07-01 19:42:17 UTC (rev 2973) +++ trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/SeekLyrics.cs 2009-07-01 21:15:19 UTC (rev 2974) @@ -28,7 +28,6 @@ timer = new System.Timers.Timer(); artist = LyricUtil.RemoveFeatComment(artist); - artist = LyricUtil.TrimForParenthesis(artist); artist = artist.Replace(" ", "-"); artist = artist.Replace("'", "-"); artist = artist.Replace("(", ""); @@ -48,7 +47,6 @@ // French letters artist = artist.Replace("\xE9", "%E9"); - title = LyricUtil.RemoveFeatComment(title); title = LyricUtil.TrimForParenthesis(title); title = title.Replace(" ", "-"); title = title.Replace("'", "-"); Modified: trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/Wiki.cs =================================================================== --- trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/Wiki.cs 2009-07-01 19:42:17 UTC (rev 2973) +++ trunk/plugins/MyLyrics/LyricsEngine/LyricsSites/Wiki.cs 2009-07-01 21:15:19 UTC (rev 2974) @@ -101,7 +101,6 @@ private void OptimizeString(ref string artist, ref string title) { - artist = LyricUtil.TrimForParenthesis(artist); title = LyricUtil.TrimForParenthesis(title); } Modified: trunk/plugins/MyLyrics/LyricsEngine/Properties/AssemblyInfo.cs =================================================================== --- trunk/plugins/MyLyrics/LyricsEngine/Properties/AssemblyInfo.cs 2009-07-01 19:42:17 UTC (rev 2973) +++ trunk/plugins/MyLyrics/LyricsEngine/Properties/AssemblyInfo.cs 2009-07-01 21:15:19 UTC (rev 2974) @@ -26,7 +26,7 @@ // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.31")] +[assembly: AssemblyVersion("1.32")] // // In order to sign your assembly you must specify a key to use. Refer to the Modified: trunk/plugins/MyLyrics/My Lyrics/MyLyrics Configuration/About.Designer.cs =================================================================== --- trunk/plugins/MyLyrics/My Lyrics/MyLyrics Configuration/About.Designer.cs 2009-07-01 19:42:17 UTC (rev 2973) +++ trunk/plugins/MyLyrics/My Lyrics/MyLyrics Configuration/About.Designer.cs 2009-07-01 21:15:19 UTC (rev 2974) @@ -80,7 +80,7 @@ this.lbInfo1.Name = "lbInfo1"; this.lbInfo1.Size = new System.Drawing.Size(197, 18); this.lbInfo1.TabIndex = 3; - this.lbInfo1.Text = "MyLyrics plugin, version 1.31"; + this.lbInfo1.Text = "MyLyrics plugin, version 1.32"; // // label2 // Modified: trunk/plugins/MyLyrics/My Lyrics/MyLyrics Configuration/MyLyricsSetup.cs =================================================================== --- trunk/plugins/MyLyrics/My Lyrics/MyLyrics Configuration/MyLyricsSetup.cs 2009-07-01 19:42:17 UTC (rev 2973) +++ trunk/plugins/MyLyrics/My Lyrics/MyLyrics Configuration/MyLyricsSetup.cs 2009-07-01 21:15:19 UTC (rev 2974) @@ -23,6 +23,7 @@ using MediaPortal.Profile; using LyricsEngine; +using System.Diagnostics; namespace MyLyrics { @@ -40,6 +41,11 @@ private string logFileName = "MyLyrics_Batch.log"; private string logFullFileName = ""; + private static int logIdCounter = 0; + + string latestArtistBeforeCrash = null; + string latestTitleBeforeCrash = null; + // events used to stop worker thread ManualResetEvent m_EventStopThread; @@ -92,7 +98,7 @@ string[] m_strippedPrefixStrings; - const int m_NoOfCurrentSearchesAllowed = 8; + int m_NoOfCurrentSearchesAllowed = 6; int m_Limit = 100; // Collections and arrays @@ -396,40 +402,19 @@ ThreadFinished = new string[] { "", "", "You must select a number of songs to search", "error" }; return; } + else if (m_Limit > m_TotalTitles) + { + tbLimit.Text = m_TotalTitles.ToString(); + m_Limit = m_TotalTitles; + } + logIdCounter = 0; + if (m_enableLogging) { - - logFullFileName = Config.GetFile(Config.Dir.Log, logFileName); - - FileStream file = null; - StreamReader sr = null; - System.IO.StreamWriter writerLog = null; - - //if file is not found, create a new xml file - if (!System.IO.File.Exists(logFullFileName)) - { - file = new FileStream(logFullFileName, FileMode.OpenOrCreate, FileAccess.Write); - file.Close(); - sr = File.OpenText(logFullFileName); - log = sr.ReadToEnd(); - sr.Close(); - log += DateTime.Now.ToString() + " The log has been created.\r\n"; - writerLog = new System.IO.StreamWriter(logFullFileName); - writerLog.Write(log); - writerLog.Close(); - } - - file = new FileStream(logFullFileName, FileMode.OpenOrCreate, FileAccess.Write); - file.Close(); - sr = File.OpenText(logFullFileName); - log = sr.ReadToEnd(); - sr.Close(); - log += "\r\n"; - log += DateTime.Now.ToString() + string.Format(" ***** New batch search for {0} lyrics started *****.\r\n", m_Limit); - writerLog = new System.IO.StreamWriter(logFullFileName); - writerLog.Write(log); - writerLog.Close(); + logFullFileName = MediaPortal.Configuration.Config.GetFile(MediaPortal.Configuration.Config.Dir.Log, logFileName); + LyricDiagnostics.OpenLog(logFullFileName); + LyricDiagnostics.TraceSource.TraceEvent(TraceEventType.Start, ++logIdCounter, LyricDiagnostics.ElapsedTimeString() + string.Format(" ***** New batch search for {0} lyrics started *****.", m_Limit)); } stopwatch.StartZero(); @@ -559,15 +544,10 @@ if (m_enableLogging) { - StreamReader sr = File.OpenText(logFullFileName); - log = sr.ReadToEnd(); - sr.Close(); - string logText = capArtist + " - " + capTitle + " has a match at " + site + ".\r\n"; - log += DateTime.Now.ToString() + " " + logText; + string logText = capArtist + " - " + capTitle + " has a match at " + site; lbLastActivity2.Text = logText; - System.IO.StreamWriter writerLog = new System.IO.StreamWriter(logFullFileName); - writerLog.Write(log); - writerLog.Close(); + + LyricDiagnostics.TraceSource.TraceEvent(TraceEventType.Information, ++logIdCounter, LyricDiagnostics.ElapsedTimeString() + "HIT!: " + logText); } progressBar.PerformStep(); @@ -593,19 +573,12 @@ m_SongsWithMark += 1; lbSongsWithMark2.Text = m_SongsWithMark.ToString(); - lbLastActivity2.Text = "No match for \"" + capArtist + " - " + capTitle + "\".\r\n"; - if (m_enableLogging) { - StreamReader sr = File.OpenText(logFullFileName); - log = sr.ReadToEnd(); - sr.Close(); - string logText = "No match found to " + capArtist + " - " + capTitle + ".\r\n"; - log += DateTime.Now.ToString() + " " + logText; + string logText = "No match found to " + capArtist + " - " + capTitle; lbLastActivity2.Text = logText; - System.IO.StreamWriter writerLog = new System.IO.StreamWriter(logFullFileName); - writerLog.Write(log); - writerLog.Close(); + + LyricDiagnostics.TraceSource.TraceEvent(TraceEventType.Information, ++logIdCounter, LyricDiagnostics.ElapsedTimeString() + "Miss: " + logText); } progressBar.PerformStep(); @@ -654,16 +627,13 @@ if (m_enableLogging) { - StreamReader sr = File.OpenText(logFullFileName); - log = sr.ReadToEnd(); - sr.Close(); - string logText = string.Format("The batch has ended with {0} found and {1} missed .\r\n", m_LyricsFound, m_LyricsNotFound); - log += DateTime.Now.ToString() + " " + logText; - log += DateTime.Now.ToString() + " ***** Batch search ended *****\r\n\r\n"; + string logText = string.Format("The search has ended with {0} found and {1} missed.\r\n", m_LyricsFound, m_LyricsNotFound); lbLastActivity2.Text = logText; - System.IO.StreamWriter writerLog = new System.IO.StreamWriter(logFullFileName); - writerLog.Write(log); - writerLog.Close(); + + logText += DateTime.Now.ToString() + " " + logText; + logText += DateTime.Now.ToString() + " ***** Batch search ended *****\r\n\r\n"; + + LyricDiagnostics.TraceSource.TraceEvent(TraceEventType.Stop, ++logIdCounter, LyricDiagnostics.ElapsedTimeString() + logText); } } @@ -728,6 +698,9 @@ { // Thread.CurrentThread.Name = "bgWorker - Search"; + //try + //{ + #region 1. Sorting song lyricConfigInfosQueue = new Queue(); @@ -763,14 +736,15 @@ Song song = (Song)songs[i]; /* Don't include song if one of the following is true - * 1. The artist isn't known (MP issue - should be deleted?) - * 2. Various artister should not be considered and the artist is "various artist" - * 3. Song with a lyric in the tag should not be considered, but instead include the file to the database right away */ + * 1. The artist is unknown or empty + * 2. The title is empty + * 3. Various artister should not be considered and the artist is "various artist" + * 4. Song with a lyric in the tag should not be considered, but instead include the file to the database right away */ MusicTag tag = null; - if (song.Artist.Equals("unknown") - || (m_DisregardVariousArtist && (song.Artist.ToLower().Equals("various artists") || song.Artist.ToLower().Equals("diverse kunstnere")))) + if (song.Artist.Equals("unknown") || string.IsNullOrEmpty(song.Artist) || string.IsNullOrEmpty(song.Title) + || (m_DisregardVariousArtist && (song.Artist.ToLower().Equals("various artists")))) { m_DisregardedSongs += 1; } @@ -827,6 +801,8 @@ bgWorkerSearch.ReportProgress(songNotKnown); } } + + bgWorkerSearch.ReportProgress(0); } else { @@ -920,6 +896,15 @@ string artist = lyricID[0]; string title = lyricID[1]; + latestArtistBeforeCrash = artist; + latestTitleBeforeCrash = title; + + if (m_enableLogging) + { + string logText = string.Format("New!: Looking for {0} - {1}.", artist, title); + LyricDiagnostics.TraceSource.TraceEvent(TraceEventType.Information, ++logIdCounter, LyricDiagnostics.ElapsedTimeString() + logText); + } + lc.AddNewLyricSearch(artist, title, MediaPortalUtil.GetStrippedPrefixArtist(artist, m_strippedPrefixStrings)); } @@ -931,13 +916,39 @@ ThreadFinished = new string[] { "", "", "No titles left for online search", "" }; } #endregion + + //} + //catch (Exception ex) + //{ + // StreamReader sr = File.OpenText(logFullFileName); + // log = sr.ReadToEnd(); + // sr.Close(); + // string logText = "Message:" + ex.Message + "\r\n"; + // logText += "StackTrace:" + ex.StackTrace + "\r\n"; + // logText += "Source:" + ex.Source + "\r\n"; + // logText += "latestArtistBeforeCrash:" + latestArtistBeforeCrash + "\r\n"; + // logText += "latestTitleBeforeCrash:" + latestTitleBeforeCrash + "\r\n"; + + // if (ex.InnerException != null) + // { + // logText = "InnerException.Message:" + ex.InnerException.Message + "\r\n"; + // logText += "InnerException.StackTrace:" + ex.InnerException.StackTrace + "\r\n"; + // logText += "InnerException.Source:" + ex.InnerException.Source + "\r\n"; + // } + + // log += DateTime.Now.ToString() + " " + logText; + // lbLastActivity2.Text = logText; + // System.IO.StreamWriter writerLog = new System.IO.StreamWriter(logFullFileName); + // writerLog.Write(log); + // writerLog.Close(); + //} } private void bgWorkerSearch_ProgressChanged(object sender, ProgressChangedEventArgs e) { lbSongsWithMark2.Text = m_SongsWithMark.ToString(); lbSongsWithLyric2.Text = m_SongsWithLyric.ToString(); - lbDisregardedSongs2.Text = m_DisregardedSongs.ToString(); + //lbDisregardedSongs2.Text = m_DisregardedSongs.ToString(); lbSongsToSearch2.Text = m_SongsToSearch.ToString(); if (e.ProgressPercentage == -1) @@ -948,6 +959,8 @@ { lbStep1a.Text = "Completed"; lbStep2a.Text = "The search for lyrics has started."; + int disregardedSongs = m_TotalTitles - m_SongsWithLyric - m_SongsWithMark - m_SongsToSearch; + lbDisregardedSongs2.Text = disregardedSongs.ToString(); } } Modified: trunk/plugins/MyLyrics/My Lyrics/Properties/AssemblyInfo.cs =================================================================== --- trunk/plugins/MyLyrics/My Lyrics/Properties/AssemblyInfo.cs 2009-07-01 19:42:17 UTC (rev 2973) +++ trunk/plugins/MyLyrics/My Lyrics/Properties/AssemblyInfo.cs 2009-07-01 21:15:19 UTC (rev 2974) @@ -31,5 +31,5 @@ // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.31")] -[assembly: AssemblyFileVersion("1.31")] +[assembly: AssemblyVersion("1.32")] +[assembly: AssemblyFileVersion("1.32")] Modified: trunk/plugins/MyLyrics/My Lyrics/change log.txt =================================================================== --- trunk/plugins/MyLyrics/My Lyrics/change log.txt 2009-07-01 19:42:17 UTC (rev 2973) +++ trunk/plugins/MyLyrics/My Lyrics/change log.txt 2009-07-01 21:15:19 UTC (rev 2974) @@ -1,17 +1,17 @@ -Release notes to MyLyrics 1.31 +Release notes to MyLyrics 1.32 MyLyrics enables the display of lyrics for the currently played music file inside MediaPortal. The plugin is able show LRC and plain lyrics, and uses both musictags and online searches to find lyrics. Basic features: -* Dynamic search for the lyrics (both LRC's and plain lyrics) to the currently played music file. -* Browse your music database and select the songs to which you want to find lyrics. -* Batch search for lyrics matching songs in music database. -* Search single title and select amoung lyrics from various lyrics sites. -* Add/delete/edit lyrics and save changes in lyrics databases. -* Import/export lyrics to/from music tags. -* Include lyrics from the Internet, musictags, text- and lrc-files. -* Create a LRC from a basic lyric on the fly and share it with the community. +- Dynamic search for the lyrics (both LRC's and plain lyrics) to the currently played music file. +- Browse your music database and select the songs to which you want to find lyrics. +- Batch search for lyrics matching songs in music database. +- Search single title and select amoung lyrics from various lyrics sites. +- Add/delete/edit lyrics and save changes in lyrics databases. +- Import/export lyrics to/from music tags. +- Include lyrics from the Internet, musictags, text- and lrc-files. +- Create a LRC from a basic lyric on the fly and share it with the community. Keys: - W key (or '#' button on remote): Toggle between basic and wide screen. @@ -36,10 +36,8 @@ Installation: Simple copy the content of the zip-file into your MP library (typical C:\Program Files\Team MediaPortal\MediaPortal). -Noteworthy changes since version 1.30: -* Add: Support for Last.fm streams -* Add: Support for ShoutCast streams -* Add: Logging has been reintroduced for better support (has to be enabled in configuration). -* Fix: Too high thread level introduced memory when searching for 5000+ songs in batch. -* Fix: StreamedMP skin fixed with correct colours for control id's 2xx and 3xx. -* and a lot of minor fixes! \ No newline at end of file +Noteworthy changes since version 1.31: +- Add: Improved logging system. +- Fix: The plugin could crash and pull down MP Configuration when the artist string in the tag starting with a special char. +- Fix: When the LRCFinder server was down not all calls to the server were terminated correcly. +- Fix: When logging was enabled multiple threads could try to access batch file simultaneously. \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |