lavalink-devs / Lavalink

Standalone audio sending node based on Lavaplayer.
https://lavalink.dev/
MIT License
1.56k stars 673 forks source link

Crossfade Feature for Seamless Song Transitions #1093

Open BENx2115 opened 3 weeks ago

BENx2115 commented 3 weeks ago

Change request

I would like to request the addition of a crossfade feature in Lavalink. This feature would allow songs to transition smoothly from one to the next by gradually lowering the volume of the current track while increasing the volume of the next track. Users could adjust the speed of the transition, similar to how it is done on Spotify. This would enhance the listening experience by eliminating abrupt song changes.

Relevance

While it is not a much-needed feature, it would be a great addition that would help many users make music playback more enjoyable and smoother.

Could this be a plugin instead?

I'm not sure if this is possible but I think as a plugin it would be ok.

Checklist

devoxin commented 3 weeks ago

Not currently doable (at least, easily/cleanly) with our current version of Lavaplayer. This would also likely require additional events to be dispatched by Lavalink to clients so that the client can send back the next track for Lavalink to queue up and begin crossfading into. There would also need to be consideration for how to handle exceptions and stuck tracks during the transition, as well as some other pertinent aspects that I might be neglecting to mention.