INTERACT FORUM

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1]   Go Down

Author Topic: LyricsFinder for Media Center  (Read 9269 times)

hardolf

  • Regular Member
  • Recent member
  • *
  • Posts: 37
  • Retired developer
LyricsFinder for Media Center
« on: June 02, 2019, 09:36:24 am »

Hi all,

I have created a new LyricsFinder for the Media Center:



Features:
  • The LyricsFinder looks for lyrics in public lyric web services
  • Look up is done for all - or just one at a time - of the current songs in the "Playing Now" list in the Media Center
  • Installation as a Media Center plugin and/or standalone lyrics finder with connection to a running local or remote Media Center
  • The found lyrics are saved in the songs' tags
  • Simple lyric editor is included
  • Selection of the public lyrics services to be used and the order in which they are called during search
  • Uses the Media Center REST Web service (MCWS), thus allowing the LyricsFinder standalone program and the Media Center to be on different machines
  • Tested on Media Center 23, 24 and 25
  • Can be used as a supplement to the new lyrics look up feature in Media Center 25
  • Simple installation with automatic detection of installed Media Center version(s)
  • It's FREE  ::)
Visit the project repository on GitHub: https://github.com/hardolf/JRiver.MediaCenter (LyricsFinder.sln and LyricsFinder subfolder)

Wiki with user manual: https://github.com/hardolf/JRiver.MediaCenter/wiki/LyricsFinder

Download area with source code and binaries: https://github.com/hardolf/JRiver.MediaCenter/releases
Logged

JimH

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 72534
  • Where did I put my teeth?
Re: LyricsFinder for Media Center
« Reply #1 on: June 02, 2019, 09:39:07 am »

Thank you.
Logged

bytestar

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 1286
  • Alpha/Betatester
Re: LyricsFinder for Media Center
« Reply #2 on: June 02, 2019, 01:03:58 pm »

It does not work with Media Center 25 x64 bit.
Media Center does not seem to be recognized.

  • Tested on Media Center 23, 24 and 25
  • Simple installation with automatic detection of installed Media Center version(s)
Logged
Official Microsoft © product tester.
Download the latest language file https://1drv.ms/u/s!AnQ3L_bTnnzv4otXL9-G4rUj9wX6Tw?e=TLGgjb (is constantly updated)

hardolf

  • Regular Member
  • Recent member
  • *
  • Posts: 37
  • Retired developer
Re: LyricsFinder for Media Center
« Reply #3 on: June 02, 2019, 01:38:55 pm »

Thanks for the feedback, bytestar.
It's only been tested on 32-bit MCs on Windows 10.
I'll look into it and get back to you
Logged

hardolf

  • Regular Member
  • Recent member
  • *
  • Posts: 37
  • Retired developer
Re: LyricsFinder for Media Center
« Reply #4 on: June 02, 2019, 04:33:49 pm »

Hi bytestar,
I have uploaded a new Setup.zip file to the release area.
The Setup can now detect both 32- and 64-bit MCs - and place the registry keys accordingly.
It works on my MC 25 x64 inst.
Could you please try it once more on your MC 25 x64?
Logged

Matt

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 42441
  • Shoes gone again!
Re: LyricsFinder for Media Center
« Reply #5 on: June 02, 2019, 04:48:05 pm »

Great work.  Thank you!
Logged
Matt Ashland, JRiver Media Center

bytestar

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 1286
  • Alpha/Betatester
Re: LyricsFinder for Media Center
« Reply #6 on: June 03, 2019, 03:20:18 pm »

Thanks but now i get this when mc starts

"Failed initializing the lyric services.
    File not found: "C:\Users\Ronald\Documents\LyricsFinder\LyricsFinder.xml"

The failure occurred in class object Utility
when calling Method Void XmlSerializeToFile(System.Object, System.String, System.Type[]).
 
Stack trace:
   bei MediaCenter.SharedComponents.Serialize.XmlSerializeToFile(Object objectInstance, String filePath, Type[] knownTypes) in D:\Projects\JRiver.MediaCenter\SharedComponents\Utility\Serialize.cs:Zeile 179.
   bei MediaCenter.LyricsFinder.Model.LyricsFinderDataType.Save() in D:\Projects\JRiver.MediaCenter\LyricsFinder\LyricsFinderCore\Model\LyricsFinderData.cs:Zeile 128.
   bei MediaCenter.LyricsFinder.LyricsFinderCore.InitLocalData() in D:\Projects\JRiver.MediaCenter\LyricsFinder\LyricsFinderCore\LyricsFinderCore.Private.cs:Zeile 281."

Hi bytestar,
I have uploaded a new Setup.zip file to the release area.
The Setup can now detect both 32- and 64-bit MCs - and place the registry keys accordingly.
It works on my MC 25 x64 inst.
Could you please try it once more on your MC 25 x64?
Logged
Official Microsoft © product tester.
Download the latest language file https://1drv.ms/u/s!AnQ3L_bTnnzv4otXL9-G4rUj9wX6Tw?e=TLGgjb (is constantly updated)

hardolf

  • Regular Member
  • Recent member
  • *
  • Posts: 37
  • Retired developer
Re: LyricsFinder for Media Center
« Reply #7 on: June 03, 2019, 04:12:46 pm »

I appreciate your tests and feedbacks, bytestar!
If you're up to more testing, you can now find an updated Setup1.0.1.zip file with a fix in the same release v1.0.1.
I we continue these test/fix cycles, have you other suggestions as to the release versioning vs. the Setup file? - i.e. should I make a new release each cycle or continue like this fix with an update of the Setup file on the same release v1.0.1?
Logged

bytestar

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 1286
  • Alpha/Betatester
Re: LyricsFinder for Media Center
« Reply #8 on: June 03, 2019, 04:19:50 pm »

Now i get this

"Error handling background worker event in LyricsFinder.
    Error in MediaCenter routine "MediaCenter.LyricsFinder.LyricsFinderPlugin.Connect".

The failure occurred in class object LyricsFinderCore
when calling Method Void Connect(System.ComponentModel.BackgroundWorker).
 
Inner exception:
    System.Exception: The connected MediaCenter Web Service has AccessKey "NWGZaJ" but "YOUR_OWN_STRING" was expected.
   bei MediaCenter.LyricsFinder.LyricsFinderCore.Connect(BackgroundWorker worker) in D:\Projects\JRiver.MediaCenter\LyricsFinder\LyricsFinderCore\LyricsFinderCore.Process.cs:Zeile 82.
 
Stack trace:
   bei MediaCenter.LyricsFinder.LyricsFinderCore.Connect(BackgroundWorker worker) in D:\Projects\JRiver.MediaCenter\LyricsFinder\LyricsFinderCore\LyricsFinderCore.Process.cs:Zeile 116.
   bei MediaCenter.LyricsFinder.LyricsFinderCore.ProcessWorker_DoWork(Object sender, DoWorkEventArgs e) in D:\Projects\JRiver.MediaCenter\LyricsFinder\LyricsFinderCore\LyricsFinderCore.cs:Zeile 592.
   bei System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e)
   bei System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)."

I appreciate your tests and feedbacks, bytestar!
If you're up to more testing, you can now find an updated Setup1.0.1.zip file with a fix in the same release v1.0.1.
I we continue these test/fix cycles, have you other suggestions as to the release versioning vs. the Setup file? - i.e. should I make a new release each cycle or continue like this fix with an update of the Setup file on the same release v1.0.1?
Logged
Official Microsoft © product tester.
Download the latest language file https://1drv.ms/u/s!AnQ3L_bTnnzv4otXL9-G4rUj9wX6Tw?e=TLGgjb (is constantly updated)

hardolf

  • Regular Member
  • Recent member
  • *
  • Posts: 37
  • Retired developer
Re: LyricsFinder for Media Center
« Reply #9 on: June 03, 2019, 04:31:41 pm »

The private configuration files must be edited with your own installation's information.
You have to edit these files in your installation folder:
MC info from MC Options > Media Network: LyricsFinderCore.dll.private.config
Lyric services, you must contact the services yourself to get your own user ID and/or token info for: ApiseedsService.dll.private.config, MusiXmatchService.dll.private.config, Stands4Service.dll.private.config
Look for help in these private conf. files.
See the user manual: https://github.com/hardolf/JRiver.MediaCenter/wiki/LyricsFinder-Installation

***** UPDATE *****

A new version is now available from https://github.com/hardolf/JRiver.MediaCenter/releases
Manual edit of the private configuration files is no longer necessary.

Features:
  • Private configuration files are now moved to data directory (%USERPROFILE%\Documents\LyricsFinder\)
  • Configuration of connection to Media Center is now done in GUI
  • Configuration of lyric services is now done in GUI
  • Added context menu and improved menu choices
  • Version update check added
Logged

hardolf

  • Regular Member
  • Recent member
  • *
  • Posts: 37
  • Retired developer
Re: LyricsFinder for Media Center
« Reply #10 on: July 11, 2019, 05:41:49 pm »

New version 1.2.0 is available from https://github.com/hardolf/JRiver.MediaCenter/releases
Changes:
  • AZLyrics lyric service added, best suited to manual searches, otherwise risk of temporary IP address banning
  • Much faster automatic and manual search with multiple active services, featuring concurrent searching and configurable queuing
  • Any Media Center playlist can now be selected for finding lyrics, even while other items on the Playing Now list are being played
  • The Media Center Playing Now list is replaced with the current LyricsFinder list when playing from the latter
  • Options and lyric services can now be modified from GUI via the menus
  • The old private configuration files are copied to the central "lyricsFinder.xml" file and deletion of the obsolete files is offered
  • Separate Plugin and Standalone log files and log4net configuration files
  • Improved playing features from LyricsFinder
  • Configurable automatic version update check added
Logged

hardolf

  • Regular Member
  • Recent member
  • *
  • Posts: 37
  • Retired developer
Re: LyricsFinder for Media Center
« Reply #11 on: July 21, 2019, 03:27:54 pm »

New version 1.2.1 is available from https://github.com/hardolf/JRiver.MediaCenter/releases
Changes:
  • Added a sequence number column
  • Pressing Ctrl+A in the lyric form will now select all text
  • Fixed Save playlist does not work
  • Fixed Automatic search duplicates lyrics on subsequent items
  • Fixed other bugs
Logged

HaWi

  • Citizen of the Universe
  • *****
  • Posts: 952
Re: LyricsFinder for Media Center
« Reply #12 on: July 23, 2019, 10:51:28 am »

Is there any chance to get this for Mac OS as well?
many thanks,
Hans
Logged
rPi5/8GB, Debian 12 Bookworm on SSD | JRMark (33.0.49): 2758
MacBookPro (2013), 2.6 GHz Quad-Core Intel Core i7, MacOS 11.7.17 | JRMark (33.0.49): 3185
Mac Studio M2 Max, 64GB, 1TB SSD, macOS Sequoia 15.1.1 | JRMark (33.0.49): 9181
Docker Container (shiomax) DS1819+ | JRMark (33.0.44): 1499
JRemote 3.43
MO 4Media 1.5.7 | Marantz SR7007 (RSL 5.1) HDMI to MacBookPro

wer

  • Citizen of the Universe
  • *****
  • Posts: 2640
Re: LyricsFinder for Media Center
« Reply #13 on: July 23, 2019, 12:46:41 pm »

This looks great, but it doesn't seem to install properly in MC21.  The installer detects the app (MC21, 32bit, windows 7x64) and directory, says it successfully installs, but when running MC the plugin just isn't there.

Is there a regular plugin file (instead of the installer) so a manual installation using the JRiver interface can be tried?
Logged

hardolf

  • Regular Member
  • Recent member
  • *
  • Posts: 37
  • Retired developer
Re: LyricsFinder for Media Center
« Reply #14 on: July 23, 2019, 01:11:30 pm »

@HaWi: no, there are no plans for any other edition than Windows .NET - sorry!

@wer: the LyricsFinder has not been tested in versions before MC 23, but it might work there.
Have you tried to select Options > Services > Interface Plug-ins > manage interface plug-ins > LyricsFinder > Show in MC?
Can you connect via the standalone LyricsFinder?
Logged

wer

  • Citizen of the Universe
  • *****
  • Posts: 2640
Re: LyricsFinder for Media Center
« Reply #15 on: July 23, 2019, 01:35:16 pm »

LyricsFinder did not show in Options > Services > Interface Plug-ins > manage interface plug-ins.  Can't tell if it's an installer problem without a plugin file to test manual installation.

I did try the standalone installation, but with poor results.

Am I missing something in the documentation that says we need to individually sign up or get tokens for lyrics services?

My installation left no lyrics services selected/active, so it of course returned zero results "out of the box".

I tried enabling them one by one.  AZLyrics and ChartLyrics were the only ones that actually worked.  Apiseeds and Musixmatch both threw error screens, and Stands4 gave no error but returned no results.

There is no place in the app to configure a token or anything for the services, so some of them can't be used.  Why are they there?  Documentation says the private parts can like token can be edited, but that does not work in the app (yes, v1.2.1)  Likewise, AZLyrics shows a comment in your app saying automatic searches can get you banned, so that really only leaves ChartLyrics.  And Chartlyrics works poorly.  The app returns (wrong) results when a manual search on the website says there are no lyrics for the song. (example: "A Place Nobody Can Find" by Sam & Dave)

Is what I'm describing not working as you intended, or am I missing something here?  If we need to register or get tokens for the services, it would be helpful if the documentation made that plain, and also provided a way to enter those values.

Also, every time the standalone app is run, it throws the an error screen because it failed to save configuration from the last run.  See attachment.

Thanks...
Logged

hardolf

  • Regular Member
  • Recent member
  • *
  • Posts: 37
  • Retired developer
Re: LyricsFinder for Media Center
« Reply #16 on: July 24, 2019, 04:20:28 am »

Plugin installation: I will see if I can create a plugin file, it may take some time, though.
Standalone:
AZLyrics and ChartLyrics are the only services you don't need any tokens or user IDs for - all other services you need your own tokens for - and in the case of STANDS4, also a user ID.
The comment field for each service outlines these requirements and also the Web site to contact in order to get a token etc.
Also, for the services with these requirements, framed text boxes are displayed in the lower detail part of the lyric form for you to enter the required info - maybe you have missed this?

No lyric services are active or can be used until you provide the required info.
I will edit the lyric service help page to emphasize this fact.

The error you experience at each start comes from the missing info above in combination with the LyricsFinder attempting to upgrade any older private configuration files from earlier versions.
Later today I will make a new release solving this problem.

As for the quality of the services, I agree, it could be better.
For that reason, I myself mostly use the manual lyric finding instead of the automatic one.
Logged

hardolf

  • Regular Member
  • Recent member
  • *
  • Posts: 37
  • Retired developer
Re: LyricsFinder for Media Center
« Reply #17 on: July 24, 2019, 09:14:56 am »

New version 1.2.2 is available from https://github.com/hardolf/JRiver.MediaCenter/releases
Changes:

* Improved editing in lyric editor, including proper case etc.
* Fixed problems when starting from an empty dataset

@wer: hope this solves your problems with the standalone LyricsFinder  :)
Please note: You should delete the LyricsFinder.xml file from the data folder "%USERPROFILE%\Documents\LyricsFinder\" before starting for the first time after installation.

The "Lyric Service List" Wiki/help page is updated with a note stressing the need for individual user tokens etc.

The plugin file is still pending and will be uploaded when ready.
Logged

wer

  • Citizen of the Universe
  • *****
  • Posts: 2640
Re: LyricsFinder for Media Center
« Reply #18 on: July 24, 2019, 12:08:11 pm »

Also, for the services with these requirements, framed text boxes are displayed in the lower detail part of the lyric form for you to enter the required info - maybe you have missed this?

I didn't miss it; it wasn't there. But it looks like you changed this in 1.2.2.  See the attached screenshots showing the lyrics services options screens from version 1.2.1 and 1.2.2.

The error on restart seems to be fixed, thanks.

Regarding the "manual" lyric finding vs automatic, could you be a little more explicit about what you mean?  I see no options in the program for manual or automatic.

The only thing I see is a button for "Start Search All" with the alternative being to right-click on an individual track and selecting "Edit/search lyrics".  Is this what you mean?  "Start Search All" is what you're calling automatic?

If that is the case, does setting "Delay between searches" to some value like 30 seconds effectively prevent banning?

Thanks...

Logged

wer

  • Citizen of the Universe
  • *****
  • Posts: 2640
Re: LyricsFinder for Media Center
« Reply #19 on: July 24, 2019, 12:42:13 pm »

Since I was now able to enter a token, I was able to try out one of the services.  It works pretty well.

One thing I would ask, could you please add an option to not add all this junk at the end of lyrics?


-----------------------------------------------------------
Found by LyricsFinder for JRiver MediaCenter on 2019.07.24
Lyrics found in Apiseeds Lyrics API
Apiseeds - https://apiseeds.com/
Apiseeds Lyrics API - https://orion.apiseeds.com/api/music/lyric
A Place Nobody Can Find lyrics are property and copyright of their owners. Commercial use is not allowed.
Copyright Sam & Dave.
All lyrics provided for educational purposes and personal use only.
-----------------------------------------------------------
Logged

hardolf

  • Regular Member
  • Recent member
  • *
  • Posts: 37
  • Retired developer
Re: LyricsFinder for Media Center
« Reply #20 on: July 25, 2019, 03:08:50 am »

Your'e right, the framed text boxes were not there when you started from scratch.
They are created dynamically when a service is selected in the upper list and when the value was empty, it wasn't shown.

Automatic vs. manual:
"Automatic" search mode is used when pressing the "Start Search All" button, as you guessed, and "manual" search is done when clicking the "Search" button in the lyric editor that is shown when a lyric is clicked in the main grid or if you right-click the row and select "Edit/search lyrics".

The "Delay between searches" is there for the reason, you mentioned.
I haven't found an optimal value; mostly because I've abandoned AZLyrics for the automatic searches and because I am banned for a couple of days and am worried that they should ban me permanently...
I do not recommend the AZLyrics for automatic searches, it is fine for manual searhes, though.

When using the automatic searches, I suggest you start with a short playlist and make your own quality control on the "hit quality" of the different lyric services and then adjust the order of the lyric searches accordingly.
The reason for this is, that the automatic search takes the first hit found by any of the services and stops searching for more.
The fist hit is not necessarily the best for the song, it might be far off the mark, in fact.

Tip: when the automatic search is done, I suggest that you sort the grid by clicking on the lyric column header.
This way the "Found" lyrics are grouped together and the quality control is easier to do.

In the next version coming up shortly, probably this week, you will be able to edit the "credit notes" yourself (the text you call "junk").
Logged

wer

  • Citizen of the Universe
  • *****
  • Posts: 2640
Re: LyricsFinder for Media Center
« Reply #21 on: July 25, 2019, 03:31:12 am »

Thank you!
Logged

hardolf

  • Regular Member
  • Recent member
  • *
  • Posts: 37
  • Retired developer
Re: LyricsFinder for Media Center
« Reply #22 on: July 31, 2019, 01:04:55 pm »

New version 1.2.3 is available from https://github.com/hardolf/JRiver.MediaCenter/releases
Changes:

  • Improved editing in lyric service form, most fields are now editable
  • MJP files included in release for manual Media Center plug-in installation (experimental)
  • Fixed resetting the lyric services' daily counters at midnight (client local time)

Please note:
The MPJ files fail to register the plug-in and Media Center does not give any clue as to the reason.
I would really, really like to know more details from MC as to the reason when these plug-in installation problems arise.
The bottom line is: the EXE installer is still the best shot at installing the plug-in.
Logged

trappersak

  • Member
  • *
  • Posts: 1
Re: LyricsFinder for Media Center
« Reply #23 on: October 10, 2019, 06:20:11 am »

Hi Hardolf,
just installed lyricsfinder, but there are no lyrics services shown.
Message:
Error in LyricServiceForm_FormClosingAsync event.
    Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.

The failure occurred in class object LyricsFinderCore

Inner exception messages: (all)

Stack trace:
   bei MediaCenter.LyricsFinder.Model.LyricServiceForm.<>c__DisplayClass11_0.<LyricServiceForm_FormClosingAsync>b__0(AbstractLyricService service) in D:\Projects\JRiver.MediaCenter\LyricsFinder\LyricsFinderCore\LyricServiceForm.cs:Zeile 351.
   bei System.Linq.Enumerable.First[TSource](IEnumerable`1 source, Func`2 predicate)
   bei MediaCenter.LyricsFinder.Model.LyricServiceForm.<LyricServiceForm_FormClosingAsync>d__11.MoveNext() in D:\Projects\JRiver.MediaCenter\LyricsFinder\LyricsFinderCore\LyricServiceForm.cs:Zeile 351.
.

How can I fix it?

Cheers and thanx for your work  :)
Logged

hardolf

  • Regular Member
  • Recent member
  • *
  • Posts: 37
  • Retired developer
Re: LyricsFinder for Media Center
« Reply #24 on: October 11, 2019, 04:50:57 am »

Hi trappersak and thanks for your response.

I have reproduced the problem when starting with a new data file (I thought that I already tested the scenario, but evidently not properly...)

A new version will be published shortly.
In the meantime, this is a workaround:

  • Close any running Media Center and standalone LyricsFinder instances
  • Edit this file on your PC: "%USERPROFILE%\Documents\LyricsFinder\LyricsFinder.xml"
  • Replace the text from the <LyricServices> start tag to the </LyricServices> end tag (both included) - with the text below
  • Save the LyricsFinder.xml file and test again

Code: [Select]
  <LyricServices>
    <LyricService xsi:type="ApiseedsService">
      <Comment>No user ID required.
Token required, may be obtained from:
https://apiseeds.com/documentation/lyrics</Comment>
      <Credit>
        <Company>Apiseeds</Company>
        <CreditDate>2019-10-08T19:34:38.1504904+02:00</CreditDate>
        <CreditTextFormat>

-----------------------------------------------------------
Found by LyricsFinder for JRiver MediaCenter on {Date}
Lyrics found in {ServiceName}
{Company} - {CreditUrl}
{ServiceName} - {ServiceUrl}
{Copyright}
-----------------------------------------------------------
</CreditTextFormat>
        <DateFormat>yyyy.MM.dd</DateFormat>
        <ServiceName>Apiseeds Lyrics API</ServiceName>
        <CreditUrlText>https://apiseeds.com/</CreditUrlText>
        <ServiceUrlText>https://orion.apiseeds.com/api/music/lyric</ServiceUrlText>
      </Credit>
      <IsActive>true</IsActive>
      <LastRequest>2019-10-08T19:46:54.8304743+02:00</LastRequest>
      <RequestCountToday>8</RequestCountToday>
      <HitCountToday>8</HitCountToday>
      <RequestCountTotal>3426</RequestCountTotal>
      <HitCountTotal>969</HitCountTotal>
      <Token></Token>
    </LyricService>
    <LyricService xsi:type="AZLyricsService">
      <Comment>No user ID or token required.
Use this service for manual lyric searches only,
as automatic search can make the service ban
your IP address temporarily for a day or two</Comment>
      <Credit>
        <Company>AZLyrics</Company>
        <CreditDate>2019-10-08T19:34:38.1534811+02:00</CreditDate>
        <CreditTextFormat>

-----------------------------------------------------------
Found by LyricsFinder for JRiver MediaCenter on {Date}
Lyrics found in {ServiceName}
{Company} - {CreditUrl}
{ServiceName} - {ServiceUrl}
-----------------------------------------------------------
</CreditTextFormat>
        <DateFormat>yyyy.MM.dd</DateFormat>
        <ServiceName>AZLyrics</ServiceName>
        <CreditUrlText>https://azlyrics.com/</CreditUrlText>
        <ServiceUrlText>https://search.azlyrics.com/search.php</ServiceUrlText>
      </Credit>
      <IsActive>true</IsActive>
      <LastRequest>2019-10-08T19:46:45.9811095+02:00</LastRequest>
      <RequestCountToday>46</RequestCountToday>
      <HitCountToday>30</HitCountToday>
      <RequestCountTotal>1995</RequestCountTotal>
      <HitCountTotal>473</HitCountTotal>
    </LyricService>
    <LyricService xsi:type="ChartLyricsService">
      <Comment>No user ID or token required</Comment>
      <Credit>
        <Company>Chart Lyrics</Company>
        <CreditDate>2019-10-08T19:34:38.1544795+02:00</CreditDate>
        <CreditTextFormat>

-----------------------------------------------------------
Found by LyricsFinder for JRiver MediaCenter on {Date}
Lyrics found in {ServiceName}
{Company} - {CreditUrl}
{ServiceName} - {ServiceUrl}
-----------------------------------------------------------
</CreditTextFormat>
        <DateFormat>yyyy.MM.dd</DateFormat>
        <ServiceName>ChartLyrics</ServiceName>
        <CreditUrlText>http://www.chartlyrics.com/</CreditUrlText>
        <ServiceUrlText>http://api.chartlyrics.com/apiv1.asmx?WSDL</ServiceUrlText>
      </Credit>
      <IsActive>true</IsActive>
      <LastRequest>2019-10-08T19:46:54.8304743+02:00</LastRequest>
      <RequestCountToday>9</RequestCountToday>
      <HitCountToday>15</HitCountToday>
      <RequestCountTotal>13544</RequestCountTotal>
      <HitCountTotal>7968</HitCountTotal>
    </LyricService>
    <LyricService xsi:type="MusiXmatchService">
      <Comment>No user ID required.
Token required, may be obtained from:
https://developer.musixmatch.com/signup.
Only the first 30% of found lyric text is returned under the free plan.
Paid plans are available</Comment>
      <Credit>
        <Company>Musixmatch</Company>
        <CreditDate>2019-10-08T19:34:38.1564729+02:00</CreditDate>
        <CreditTextFormat>

-----------------------------------------------------------
Found by LyricsFinder for JRiver MediaCenter on {Date}
Lyrics found in {ServiceName}
{Company} - {CreditUrl}
{ServiceName} - {ServiceUrl}
{Copyright}
-----------------------------------------------------------
</CreditTextFormat>
        <DateFormat>yyyy.MM.dd</DateFormat>
        <ServiceName>Musixmatch API</ServiceName>
        <CreditUrlText>https://www.musixmatch.com/</CreditUrlText>
        <ServiceUrlText>http://api.musixmatch.com/ws/1.1</ServiceUrlText>
      </Credit>
      <IsActive>true</IsActive>
      <LastRequest>2019-10-08T19:46:54.8304743+02:00</LastRequest>
      <RequestCountToday>43</RequestCountToday>
      <HitCountToday>9</HitCountToday>
      <RequestCountTotal>4325</RequestCountTotal>
      <HitCountTotal>759</HitCountTotal>
      <Token></Token>
    </LyricService>
    <LyricService xsi:type="Stands4Service">
      <Comment>User ID and Token required, may be obtained from:
https://www.abbreviations.com/api.php</Comment>
      <Credit>
        <Company>STANDS4 Network</Company>
        <CreditDate>2019-10-08T19:34:38.1614595+02:00</CreditDate>
        <CreditTextFormat>

-----------------------------------------------------------
Found by LyricsFinder for JRiver MediaCenter on {Date}
Lyrics found in {ServiceName}
{Company} - {CreditUrl}
{ServiceName} - {ServiceUrl}
-----------------------------------------------------------
</CreditTextFormat>
        <DateFormat>yyyy.MM.dd</DateFormat>
        <ServiceName>STANDS4 Lyrics.com</ServiceName>
        <CreditUrlText>https://www.lyrics.com/</CreditUrlText>
        <ServiceUrlText>https://www.abbreviations.com/services/v2/lyrics.php</ServiceUrlText>
      </Credit>
      <IsActive>true</IsActive>
      <LastRequest>2019-10-08T19:46:45.985098+02:00</LastRequest>
      <RequestCountToday>101</RequestCountToday>
      <HitCountToday>6</HitCountToday>
      <RequestCountTotal>1604</RequestCountTotal>
      <HitCountTotal>202</HitCountTotal>
      <DailyQuota>100</DailyQuota>
      <QuotaResetTime>
        <UniversalTime>2019-10-08T04:00:00Z</UniversalTime>
        <TimeZoneId>Eastern Standard Time</TimeZoneId>
      </QuotaResetTime>
      <Token></Token>
      <UserId></UserId>
    </LyricService>
  </LyricServices>

Remember that you must request your own user IDs and/or tokens for the lyric services that require this info.
Information on where your requests should be sent to may be found in the text above or in the LyricsFinder menu Tools > Lyric Services....
Logged

hardolf

  • Regular Member
  • Recent member
  • *
  • Posts: 37
  • Retired developer
Re: LyricsFinder for Media Center
« Reply #25 on: December 23, 2019, 09:03:56 am »

New version 1.2.4 is available from https://github.com/hardolf/JRiver.MediaCenter/releases
Changes:

  • The server requests during automatic search all can now be done serially instead of in parallel, thus saving requests when having quota limits
  • Keyboard hot-keys modified for stand-alone program
  • STANDS4 (lyrics.com) lyric service quota settings may now be edited from the GUI
  • Fixed: New installation has no lyric services
  • Fixed: STANDS4 (lyrics.com) daylight savings time

Please note:
The MJP files fail to register the plug-in and Media Center does not give any clue as to the reason.
I would really, really like to know more details from MC as to the reason when these plug-in installation problems arise.
The bottom line is: the Setup.exe installer is still the best shot at installing the plug-in.
Logged

hardolf

  • Regular Member
  • Recent member
  • *
  • Posts: 37
  • Retired developer
Re: LyricsFinder for Media Center
« Reply #26 on: January 06, 2020, 05:47:40 am »

The LyricsFinder user manual is now updated with a keyboard hot keys page.
https://github.com/hardolf/JRiver.MediaCenter/wiki/LyricsFinder-Keyboard-Hot-Keys
Logged

hardolf

  • Regular Member
  • Recent member
  • *
  • Posts: 37
  • Retired developer
Re: LyricsFinder for Media Center
« Reply #27 on: February 01, 2020, 02:45:15 pm »

New version 1.2.5 is now available from https://github.com/hardolf/JRiver.MediaCenter/releases
Changes:

  • Icon and version are now shown in title bar on the Standalone Lyrics Finder
  • Fixed: Empty lyrics are not saved
  • Fixed: Daily counters not reset properly
  • Fixed: Request counters not incremented when HTTP request fails
  • Fixed: HTML special characters not decoded in lyrics

Please note:
The MJP files fail to register the plug-in and Media Center does not give any clue as to the reason.
I would really, really like to know more details from the MC log as to the reason why these plug-in installation problems arise.
The bottom line is: the Setup.exe installer is still the best option to install the plug-in.
Logged

JimH

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 72534
  • Where did I put my teeth?
Re: LyricsFinder for Media Center
« Reply #28 on: February 01, 2020, 03:17:14 pm »

Should be MJP, not MPJ.
Logged

hardolf

  • Regular Member
  • Recent member
  • *
  • Posts: 37
  • Retired developer
Re: LyricsFinder for Media Center
« Reply #29 on: February 01, 2020, 03:53:11 pm »

Thanks, Jim.

I got the correct file extension in the installation package, though - and it won't install in MC 25.
I get the error shown in the attached file.

Bent
Logged

hardolf

  • Regular Member
  • Recent member
  • *
  • Posts: 37
  • Retired developer
Re: LyricsFinder for Media Center
« Reply #30 on: March 22, 2020, 02:49:53 pm »

New version 1.3.0 is now available from https://github.com/hardolf/JRiver.MediaCenter/releases

This version primarily features an improved lyric editor and new lyric services.
Changes:
  • CajunLyrics service added, specializing in cajun music lyrics, mostly in french.
  • Lololyrics service added, specializing in lyrics for Electronic music like Dance, House etc.
  • Spell check feature added in the lyric editor
  • Undo/Redo feature added in the lyric editor
  • Eliminate parenthesized test in search
  • LyricsFinder now has MC like play controls
  • Leading and trailing space in lyrics can be trimmed in the lyric editor
  • Find/replace functionality in the lyric editor
  • Proper, Title, Lower, Upper and Sentence case options added in the lyric editor
  • General user interface improvements in the lyric editor, making it easier to use the keyboard to navigate
  • Improved error handling in non-fatal lyric services errors like quota limits and IP banning
  • Fixed false quota exceeded errors in STANDS4Service
  • Fixed: ChartLyrics error, No valid words left in contains list
.NET Framework 4.8 is required for this version. You may get it here:
https://dotnet.microsoft.com/download/dotnet-framework/net48

The LyricsFinder user manual is now updated with descriptions of the new features and changed keyboard hot-keys:
https://github.com/hardolf/JRiver.MediaCenter/wiki/Lyrics-Window
https://github.com/hardolf/JRiver.MediaCenter/wiki/LyricsFinder-Keyboard-Hot-Keys

Please note:
The MJP files fail to register the plug-in and Media Center does not give any clue as to the reason.
The Setup.exe installer is still the best option to install the plug-in.
Logged

hardolf

  • Regular Member
  • Recent member
  • *
  • Posts: 37
  • Retired developer
Re: LyricsFinder for Media Center
« Reply #31 on: April 07, 2020, 04:26:13 am »

New version 1.3.1 is now available from https://github.com/hardolf/JRiver.MediaCenter/releases

LyricsFinder improvement and bug fix update.
Changes:
.NET Framework 4.8 is required for this version. You may get it here:
https://dotnet.microsoft.com/download/dotnet-framework/net48

Starting from this version, LyricsFinder MJP files are no longer released, as they don't work anyway.
The Setup.exe installer is the best option to install the plug-in.
Logged

JimH

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 72534
  • Where did I put my teeth?
Re: LyricsFinder for Media Center
« Reply #32 on: April 07, 2020, 06:33:15 am »

The MJP files should work if MC owns the filetype.  Why don't  you  post the contents of one here?  Maybe someone can help.
Logged

hardolf

  • Regular Member
  • Recent member
  • *
  • Posts: 37
  • Retired developer
Re: LyricsFinder for Media Center
« Reply #33 on: April 09, 2020, 03:55:03 pm »

Hi Jim.

The MC is associated with MJP files and correctly tries to install the plug-in.
As you suggested, I have posted my problem, including the MJP file, in the Plug-in Development forum:

https://yabb.jriver.com/interact/index.php/topic,124841.msg864415.html#msg864415

rgds, Bent
Logged

hardolf

  • Regular Member
  • Recent member
  • *
  • Posts: 37
  • Retired developer
Re: LyricsFinder for Media Center
« Reply #34 on: August 09, 2020, 05:31:04 am »

New version 1.3.3 is now available from https://github.com/hardolf/JRiver.MediaCenter/releases

August 2020. LyricsFinder improvement and bug fix update.
Changes:
  • Item information page added on the Tools menu
  • Added menu item "Remove excess space and line endings" in the lyric editor
  • Options to collect MC playlist info at LyricsFinder start is added to the Options form, with separate options for plug-in and for standalone
  • Timeout option added to the lyric services properties
  • The main grid columns can now be resized and reordered
  • Alt+F4 keyboard shortcut is now used to close the standalone program instead of the Escape key
  • Alt+S keyboard shortcut no longer starts the (automatic) search all, nor does it anything else
  • Fixed: Sentence case problem in the lyric editor (again) https://github.com/hardolf/JRiver.MediaCenter/issues/29
  • Fixed: Problem with saving/restoring standalone form location and size in systems with multiple monitors https://github.com/hardolf/JRiver.MediaCenter/issues/31
  • Fixed: Hit and request counters fail during search all https://github.com/hardolf/JRiver.MediaCenter/issues/30
.NET Framework 4.8 is required for this version. You may get it here:
https://dotnet.microsoft.com/download/dotnet-framework/net48

The Setup.exe is the easiest option for installing the plug-in (and/or the standalone).

The standalone may also be installed by simply unpacking the LyricsFinderFiles ZIP file into your Program Files folder.
Logged

mabes

  • Galactic Citizen
  • ****
  • Posts: 287
Re: LyricsFinder for Media Center
« Reply #35 on: January 02, 2021, 03:37:48 pm »

This is great, any way I could modify the source code to look up guitar chords instead of lyrics?
Logged

Awesome Donkey

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 7880
  • Long cold Winter...
Re: LyricsFinder for Media Center
« Reply #36 on: January 02, 2021, 05:03:02 pm »

It's open-source, so if you're a developer and know how to do it, you can.
Logged
I don't work for JRiver... I help keep the forums safe from "male enhancements" and other sources of sketchy pharmaceuticals.

Windows 11 24H2 Update 64-bit + Ubuntu 24.10 Oracular Oriole 64-bit | Windows 11 24H2 Update 64-bit (Intel N305 Fanless NUC 16GB RAM/500GB M.2 NVMe SSD)
JRiver Media Center 33 (Windows + Linux) | iFi ZEN DAC 3 | JBL 306P MkII Studio Monitors | Audio-Technica ATH-M50x Headphones

hardolf

  • Regular Member
  • Recent member
  • *
  • Posts: 37
  • Retired developer
Re: LyricsFinder for Media Center
« Reply #37 on: January 03, 2021, 04:40:13 pm »

The LyricsFinder code is rather lyrics-centered, so a fair amount of change will have to be done, both in the main code body and in the code parts that actually fetch the lyrics.

The code that actually fetch the lyrics is located in separate assemblies, each written to get lyrics from one lyrics service source.
These assemblies are in separate folders below the the "LyricServices" folder in the source code.

I suggest starting by making a quick look at any guitar chords service you can find out on the Internet - and see how easy it would be to get data from it, given the artist, album and track title.

Then you could compare the guitar chords service interface(s) with some of the lyrics search assemblies mentioned above.
This would give you an idea as to the work extent involved.
Logged
Pages: [1]   Go Up