MarshallOfSound / Google-Play-Music-Desktop-Player-UNOFFICIAL-

A beautiful cross platform Desktop Player for Google Play Music
https://www.googleplaymusicdesktopplayer.com
MIT License
8.28k stars 768 forks source link

Discord Rich Presence layout could be improved #2978

Open bramhaag opened 6 years ago

bramhaag commented 6 years ago

The current layout looks a bit weird in my opinion:

Google Play Music Desktop Player
Album {album} by {artists}
{song} ({x} out of {y})
xx:xx left

The Album {album} by {artists} line is in my opinion very confusing, the {artists} are the artists of the current song playing, not the "artist" of the album, i.e albums such as Super Eurobeat have songs from 10 or more artists. In my opinion, the layout could be improved by either making it fully customizable or by using something like Discord's Spotify layout (I am aware that this uses some restricted features)

welcome[bot] commented 6 years ago

👋 Thanks for opening your first issue here! If you're reporting a 🐞 bug, please make sure you include steps to reproduce it. We get a lot of duplicate issues on this repo, so please double check now that your issue has not already been solved or doesn't have an open issue already. To help make it easier for us to investigate your issue, please follow the contributing guidelines and ensure the issue template was filled out.

tankerkiller125 commented 6 years ago

I would like to see the format to be more like that of the Spotify Rich Presence

Spotify Rich Presence

moonexpr commented 6 years ago

You should contact the Discord Team about "advanced features". You probably could contact the Discord Team, you most likely would get the same treatment as Spotify did hopefully without royalties.

features

jostrander commented 6 years ago

The Spotify integration appears to be a custom integration not using their standard RPC. I'm not sure that the advanced rich presence features would do any good in this case without contacting Discord for a similar layout.

jostrander commented 6 years ago

Also, @bramhaag the track artist is currently what's selected. We can only pull that data from the currently playing song area, so if that's what Google displays there our hands are tied.

https://github.com/MarshallOfSound/Google-Play-Music-Desktop-Player-UNOFFICIAL-/blob/master/src/main/features/core/discordRichPresence.js#L51

Alipoodle commented 6 years ago

2970 I've already mentioned the problem with it being cluttered, and even refereed back to the Discord Wiki... And still feel that some options should be made to make it seem less cluttered, especially with the amount of useless information that is thrown at the user.

Stuff like Listening to Google Play Music Desktop Player and Album Art Is not possible due to using the Rich Presences API which only meant to be supported for Games (therefore playing) and images shouldn't be made on the fly / grabbed from another source..

Spotify is custom as per what jostrander said, and won't be coming to Google Play Music without some partnership. I doubt that Discord will create some partnership with just this application dude to it not getting the information from an official source.

Advanced Rich Presences features won't work either, as these are again required for games.

aidant commented 6 years ago

I agree it needs some work, If we could get listening integration with discord that would be awesome. I was thinking of removing the Album as it can get awfully cluttered and killing the presence after plenty of idling. If you have any suggestions id be happy to look into it.

moonexpr commented 6 years ago

Instead of making the album art the generic logo, would it be possible to use the genre of music? Or does Google not provide such metadata?

moonexpr commented 6 years ago

Then only use the default logo when the queue is idle

TeRRa4 commented 6 years ago

I changed it to this, but I can't build it on any machine I have access to:

    const presence = {
      state: track.artist,
      details: track.title,
      startTimestamp: start,
      endTimestamp: end,
      instance: false,
      largeImageKey: 'playing',
      largeImageText: 'Google Play Music',
    };

So in theory it should come out:

Google Play Music Desktop Player
Song name
Artist name
Duration remaining
Techman commented 6 years ago

I wanted to bump this issue because I too would like to see the integration improved slightly. It would be awesome if the icon would change to match the album image, with a little beacon in the corner with the current logo that is shown, kind of like the package for the Atom editor. image

jostrander commented 6 years ago

Near impossible @Techman- . You have to upload the "album images" before hand and pick which one to show in the integration by name. the Atom editor can get away with it, because there is a rather finite list of programming languages etc to create artwork for and maintain.

Techman commented 6 years ago

That's unfortunate. Is this worth bringing up in the Discord developer channels?

jostrander commented 6 years ago

I doubt they are going to allow random image art via URL for rich presence as it's too insecure.

Alipoodle commented 6 years ago

Album Art Is not possible due to using the Rich Presences API which only meant to be supported for Games (therefore playing) and images shouldn't be made on the fly / grabbed from another source..

Already mention this.

To get the album art we would need to get some form of partnership thing but as I've also mentioned:

Spotify is custom... , and won't be coming to Google Play Music without some partnership. I doubt that Discord will create some partnership with just this application dude to it not getting the information from an official source.

Techman commented 6 years ago

What the developers could do is make a little "branch" of this API specifically for media players. Music apps can be individually cleared by a human if security is a concern.

Just floating ideas.

Alipoodle commented 6 years ago

and won't be coming to Google Play Music without some partnership. I doubt that Discord will create some partnership with just this application dude to it not getting the information from an official source.

Techman commented 6 years ago

I'm not asking for a specific integration for GPMDP, I'm wanting a more general API so that a variety of media applications could integrate, like VLC too.

Alipoodle commented 6 years ago

By the sounds of this... it's not relevant to GPMDP.

Discord Rich Presences Page GPMDP JSON API Docs GPMDP Web Socket API Docs

Techman commented 6 years ago

It's a general solution to a very local issue :P

haboutnnah commented 6 years ago

Also, it says playing but it should say 'listening to', like spotify.

Alipoodle commented 6 years ago

Stuff like Listening to Google Play Music Desktop Player... Is not possible due to using the Rich Presences API which only meant to be supported for Games therefore playing instead of listening

haboutnnah commented 6 years ago

I know in discord.js you can set the type to 2 and then it says that

Alipoodle commented 6 years ago

While discord-rpc is an extension of D.js, they don't work in the same way at all! Discord RPC doesn't allow for providing of type unlike D.js which will provide it through the API.

For a person who has worked on other Discord RPC related projects and D.js projects, I'm aware of the limitations within discord RPC.

No Custom Album art images, No Listening to Google Play Music, No Listening party, No in chat stuff Without some form of partnership with Discord - which is unlikely due to being a third party application.

Can we make this more relevant to the original issue and talk about it's layout!