lyricfier icon indicating copy to clipboard operation
lyricfier copied to clipboard

Current song error: No song

Open leoarruda6 opened this issue 5 years ago • 16 comments

image

leoarruda6 avatar Jul 20 '18 12:07 leoarruda6

Having the exact same issue, doesn't matter which song I play.

Piratkopia13 avatar Jul 20 '18 20:07 Piratkopia13

The same thing happens to me and I think it's been since the last update of windows 10

ghost avatar Jul 21 '18 11:07 ghost

Tried on ubuntu 16.04. Same error

flashjames avatar Jul 21 '18 20:07 flashjames

Don't know if it helps, but trying to find out here, got this. The token being used has a 'faketoken' at the end. Any idea?

image

leoarruda6 avatar Jul 23 '18 17:07 leoarruda6

Same thing here with macOS 10.13.5.

fjpalacios avatar Jul 24 '18 09:07 fjpalacios

Hey! This could be a change in spotify API. Let me check this on weekend and I see what can I do.

emilioastarita avatar Jul 24 '18 11:07 emilioastarita

@emilioastarita must be because Musixmatch and spotify-lyrics also do not seem to work, thought I messed something up haha, thank you :)

discoli-zz avatar Jul 25 '18 00:07 discoli-zz

same issue here. any update @emilioastarita ?

guiburi avatar Jul 30 '18 06:07 guiburi

same problem... Looks like spotify changed something because https://open.spotify.com/token is returing a token that ends with "faketoken".

j0hn avatar Aug 01 '18 18:08 j0hn

same problem here with both Musixmatch and Lyricifier in Ubuntu 16.04

Vahidrostami avatar Aug 07 '18 14:08 Vahidrostami

Same problem here! (Lyricifier+Spotify, on Linux Mint). Any news?

rgalhama avatar Aug 13 '18 20:08 rgalhama

Same problem here! Is it something related to spotify?

nnoc avatar Aug 16 '18 22:08 nnoc

Lyricfier is sorely missed!

RobFog avatar Aug 24 '18 10:08 RobFog

Just chiming in to say the same! @emilioastarita if you could use some help just ping me and I'll see what I can do. I'm not super familiar with typescript, but I may be of some use. Just LMK!

morgancmartin avatar Aug 24 '18 11:08 morgancmartin

Same issue here as well, any updates on a possible fix? Got some experience with typescript so hit me up if you need some help.

DaanGebraad avatar Sep 22 '18 16:09 DaanGebraad

Every Open-Source project which deals with new Spotify API struggles with this problem after recent API upgrade.

Solution 1 - upgrade to new WebApi

The official way to do it is to follow guide how it is mentioned under https://developer.spotify.com/documentation/general/guides/authorization-guide/

  • It requires an app registration which would be assigned to some user account
    • it could be maintainer/contributor account OR app author account
  • Commentary for Open-Source App and Authorization Flows:
    • Implicit grant flow at least does not makes problems with secret key and server-side hosting, but requires token refreshing manually by user each time it expires (so logging in to Spotify)
    • Rest of methods require dealing with secret key, so server-side hosting (so monies $$)
    • Another possibility is that each user can be asked to become yourself Spotify Developer and generate its own application to obtain its own secret key

Solution 2 - offline mechanism usage in OS environments to obtain currently played song data

Linux

Under Linux it is possible to get currently played Song via MPRIS based on dbus - e.g. https://stackoverflow.com/a/33923095. Shared code above is made for Python2. To make it work under Python3 just add brackets in "print" call invocation.

  • NodeJs package to deal with dbus https://www.npmjs.com/package/dbus
  • NodeJs package to deal with MPRIS directly https://www.npmjs.com/package/mpris
    • MPRIS seems to be stable, so this package even might be stated as being done - not requiring constant upgrades.

Windows 10

There seems to exist an API called SystemMediaTransportControls or SMTC in C# - is there possibility to integrate it with NodeJs? I do not know - https://docs.microsoft.com/en-us/uwp/api/windows.media.systemmediatransportcontrolsdisplayupdater

  • NodeJS Edge seems to be a solution: https://github.com/tjanczuk/edge

Older Windows

Not sure if any method exist. Maybe reading data from Spotify App title.

Summary

  • This solution can make Lyricifer even better app which is not limited to Spotify!
  • Seems to be a lot of work to do.
  • Another projects can be found via Google which uses MPRIS: https://www.google.com/search?q=Lyrics%20MPRIS%20site%3Agithub.com
    • https://github.com/ok100/lyvi

Solution 3

It somehow misuses Spotify Developer example application, so I will not get into it. I will only say that it comes with specific client ID. Here is URL https://developer.spotify.com/console/get-users-currently-playing-track/. I will not comment on that method anymore.

patrolez avatar Sep 22 '18 22:09 patrolez