shipgirlproject / Shoukaku

A stable, powerful and updated wrapper around Lavalink
https://guide.shoukaku.shipgirl.moe/
MIT License
273 stars 84 forks source link

question: player maximum volume #147

Closed thaddeuskkr closed 1 year ago

thaddeuskkr commented 1 year ago

Re-post of the same unanswered post on Discord that I made a while ago.

On Shoukaku v4 (master), I've noticed that the maximum volume that can be set by the player is now 100. Why is it so? Before this, the volume implementation was fine. Did something with Lavalink update that caused this change, or is it just a decision made by someone?

Asking because I don't think that the library should be limited in terms of a maximum volume, but rather the limits should be set by the various implementations. https://github.com/Deivu/Shoukaku/blob/master/src/guild/Player.ts#L378-L385

Deivu commented 1 year ago

We still are thinking on how we would implement the volume based on a discussion on Lavalink, so this can change. There are two kinds of volume you can set on Lavalink that could be confusing. We could just put it on docs or streamline the values, but I would probably not go for the latter to keep things in spec. v4 player class is still subject to change depending on what I decide to do.

thaddeuskkr commented 1 year ago

Ah, I see. What are the two kinds that can be set, and what are the respective methods currently? Looking at the implementation documentation on Lavalink, the only two I see are one in filters, and one in player updates. Is that right?

Deivu commented 1 year ago

One is on playTrack where you can do 0-1000 but that isn't tracked for now One is on setVolume where you can do 0.1-5.0

Depending on what I think the best way on doing this, we'll see how it goes.

flav-code commented 1 year ago

I propose setVolume() 0-5 => setVolume() 0-1000 setFilterVolume() 0-5

Deivu commented 1 year ago

Fixed in latest master commits above 76dca52