sll552 / DiscordBee

MusicBee plugin that updates your Discord status with the currently playing track
Apache License 2.0
421 stars 31 forks source link

Allow the use of up to 300 images for album artwork and icons #87

Closed Rings4 closed 2 years ago

Rings4 commented 3 years ago

I am aware that there are limitations to how many artworks you can display for a single app.

I am also aware that a discord app can have a maximum of 300 images. With play, pause and stop each taking a slot, and the main MusicBee logo taking up another slot, that leaves us with 296 free slots.

I'm currently using a fork of this plugin that allows us to use custom images for the play/pause/stop icon as well as the app icon. Screenshot 2021-09-16 05 51 12 firefox Screenshot 2021-09-16 05 51 19 firefox Screenshot 2021-09-16 05 51 25 firefox It's great to be able to determine which images the rich presence uses. I hope the customizeability can be extended of the main branch to not only offer this, but also allow us to use the free slots to upload our favourite albums' artwork and have the rich presence display those when the album is being played.

I propose that a table be created that the user may summon via a button beside the Placeholder button (or integrate this into the Placeholder button itself) which they can manually fill up, so they can associate an image with an album. That way we can have the album art show for 296 of our favourite albums, which is quite a lot of albums if you think about it.

Obviously the user would have to create their own app in the discord developer's portal and use their app's appID to use their own custom images, which takes seconds to set up.

In addition, depending on how feasible this would be: there could be a second table for artists that, if an album is not matched with an artwork, the artist table can check for a match, and if so, display the artist's image based on the artist tag. Just spitballing here of course, but there are many artists who I'm a huge fan of but they exclusively release singles, so I'd be using up many slots to display artwork for each release if matching the album tag. If the artist tag could be matched in such scenarios, that would be really neat.

sll552 commented 3 years ago

I am currently working on getting album covers working. The solution will have limitations because Discord basically doesn't care about their own APIs working correctly.

The 300 image limitation won't be noticeable as I plan to delete the oldest one when the limit hits. So there should be no need for any manual assigning of album covers to slots or anything like this. Currently I am focusing on getting the basics working, when that is done I can think of more customization options like changing the App Icon and so on.

Please wait until the release with album covers is live, it should not take long.

Rings4 commented 2 years ago

Yesterday's update doesn't seem to work, and I'm weary on getting my account flagged by excessive api calls (deleting and uploading artwork constantly). I think my suggestion would be safer and more consistent.

Maybe you can even set it to use multiple discord application ids where each of them stores 300 artworks, and it switches to the one with the artwork you need.

sll552 commented 2 years ago

Yesterday's update doesn't seem to work, and I'm weary on getting my account flagged by excessive api calls (deleting and uploading artwork constantly). I think my suggestion would be safer and more consistent.

I don't think that this will be a problem. If there is a rate limit for that API I don't think that it will do more than prevent excessive requests as they happen, there is little sense in flagging or disabling accounts for that. The API is also used by the client itself so I would assume its save to use. And I try to keep the requests as low as possible anyway.

For it not working, please see #92 maybe its the same issue.