Skip to content



  • Update lavaplayer to 1.5.2 - Fixed NPE on missing author in playlist tracks in YouTube


  • Update lavaplayer to 1.5.1 - Fixed YouTube access token errors
  • Fixed websocket crash when seeking and nothing is playing
  • Fixed error when seeking and player is not playing anything


  • Fix YouTube 403 errors
  • Fix YouTube access token errors


  • Add JDA-NAS support for musl (x86-64, aarch64) based systems (most notably alpine)


  • Update Lavaplayer to 1.4.1 & 1.4.2
  • New support for MUSL based systems (most notably alpine)
  • New alpine docker image variant (use -alpine suffix)


  • Fix endTime in Player Update endpoint only applying when playing a new track
  • Fix errors when doing multiple session resumes
  • Update lavaplayer to 1.4.0 see here for more info


Lavalink Docker images are now found in the GitHub Container Registry instead of DockerHub


  • Fix an issue where Lavalink would not destroy a session when a client disconnects


  • Fix breaking change where /decodetrack would return a full track instead of the track info


  • Fix breaking change where frameStats would be null instead of omitted


  • Revert of application.yml autocreate as it can cause issues with differently named configs


  • New REST API for player control and deprecation of all websocket OPs. For more info see here
  • Autocreate default application.yml if none was found.
  • New config option to disable jda nas.
  • New config option to disable specific filters.
  • Update lavaplayer to
  • Update to v0.2.6.

Contributors: @topi314, @Devoxin, @melike2d, @freyacodes, @aikaterna, @ooliver1


  • Update lavaplayer to For more info see here


  • Update lavaplayer to 1.3.99. For more info see here


  • New userId & clientName getters in the plugin-api. For more info see here.

Contributors: @melike2d


  • Update to 0.2.5 which fixes crashes when ipv6 is disabled
  • Fix null socketContext in IPlayer for plugins
  • New ping field in player update. see for more info

Contributors: @topi314, @Devoxin, and @freyacodes


  • New plugin system. For more info see here.
  • Add support for HTTP proxying via httpConfig. For more info see here.
  • Update koe version to 2.0.0-rc1.
    • this fixes the WebSocketClosedEvent with code 1006 problem.
  • Fix error when enabling timescale and lowpass filters.
  • Fix player not playing after moving between voice chats or changing regions.
  • Fix guild ids sent as numbers in json.
  • Fix missing timescale natives.
  • Fix setting endMarkerHit to correctly set FINISHED as the reason.
  • Undeprecation of the volume property in the play OP.
  • Configurable track stuck threshold. For more info see here.
  • Add JDA-NAS support for more CPU Architectures. For more info see here. Big thanks goes to @MinnDevelopment here.
  • Update lavaplayer to which fixes the latest yt cipher issues and age restricted tracks

Contributors: @freyacodes, @davidffa, @Walkyst, @topi314, @duncte123, @Kodehawa, @Devoxin, @Muh9049, @melike2d, @ToxicMushroom, @mooner1022, @rohank05, @Fabricio20, @TheEssemm, and @jack1142


  • New filters system
  • Deprecation of TrackExceptionEvent.error, replaced by TrackExceptionEvent.exception
  • Added the connected boolean to player updates.
  • Updated lavaplayer, fixes Soundcloud
  • Added source name to REST api track objects
  • Clients are now requested to make their name known during handshake

Contributors: @freyacodes, @duncte123, @DaliborTrampota, @Mandruyd, @Allvaa, and @topi314


  • Update Lavaplayer to 1.3.76


  • Update Lavaplayer to 1.3.74


  • Update Lavaplayer to 1.3.65, fixes Soundcloud


  • Updated Lavaplayer to 1.3.61
  • Fixed a ConcurrentModificationException (Thewsomeguy)


  • Updated to Sedmelluq's Lavaplayer 1.3.53


  • Replaced Magma with Koe.
  • Finally implemented stopTime for play op.
  • Added playerUpdateInterval config option.
  • Added environment to Sentry config.
  • Fixed #332
  • Updated IP rotator.
  • Update lavaplayer to 1.3.59 from devoxin's fork.
  • Added a Testbot for development.

Contributors: @freyacodes, @Thewsomeguy, @Neuheit, @Sangoon_Is_Noob, @TheEssem, and @Devoxin


  • Update lavaplayer to from devoxin's fork.


  • Update lavaplayer to 1.3.53 from devoxin's fork.



  • Updated Lavaplayer to 1.3.50. This notably fixes YouTube search.

Search patch contributed by @freyacodes


  • Update Magma and Lavaplayer.
  • Added TrackStartEvent event.
  • Added retryLimit configuration option.
  • Use a single AudioPlayerManager for all WS connections, reducing overhead.
  • Docker images now use Zulu JDK 13 to mitigate TLS 1.3 problems.

Contributors: @freyacodes, @duncte123, @ByteAlex, and @Xavinlol


Officially limit Lavalink to JRE 11 and up. Magma has long been having issues with older versions.


  • IP rotation system for getting around certain ratelimits.
  • Update Lavaplayer to 1.3.32.
  • Docker container now uses a non-root user.

Contributors: @freyacodes, @ByteAlex, @duncte123, and @james7132


  • Updated Lavaplayer to 1.3.19. This release includes a patch which fixes loading youtube URLs.
  • Made the WebSocket handshake return code 401 instead of 200 on bad auth. #208

Contributors: @freyacodes and @Devoxin


  • Update dependencies -- fixes frequent youtube HTTP errors
  • Return FriendlyException message on LOAD_FAILED #174
  • Add option to disable ytsearch and scsearch #194

Contributors: @Devoxin, @duncte123, @freyacodes, and @napstr


  • Add compatibility for Java 8-10

Contributor: @MinnDevelopment


  • Patched magma

Contributor: @freyacodes


  • Bumped to Java 11. Treating this as a patch version, as v3.2 still requires Java 11 due to a Magma update.



  • Added support for resuming
  • Added noReplace option to the play op
  • Sending the same voice server update will not cause an existing connection to reconnect

Contributor: @freyacodes


  • Add API version header to all responses

Contributor: @Devoxin


  • Add equalizer support
  • Update lavaplayer to 1.3.10
  • Fixed automatic versioning
  • Added build config to upload binaries to GitHub releases from CI

Contributors: @Devoxin, @freyacodes, @calebj


  • Replaced JDAA with Magma
  • Added an event for when the Discord voice WebSocket is closed
  • Replaced Tomcat and Java_Websocket with Undertow. WS and REST is now handled by the same server and port. Port is specified by server.port.


  • Breaking: The minimum required Java version to run the server is now Java 10.
    Please note: Java 10 will be obsolete as of September 2018 with the release of Java 11. Expect a Lavalink major version release that will be targetting Java 11 by that time.
  • Breaking: Changes to the output of the /loadtracks endpoint. #91, #114, #116
  • Breaking: The Java client has been moved to a new repository.
  • Breaking: The Java client has been made generic. This is a breaking change so please read the migration guide.
  • Better configurable logging. #97
  • Add custom sentry tags, change sentry dsn configuration location. #103
  • Add Lavalink version header to websocket handshake. #111
  • Use git tags for easier version visibility. #129

Contributors: @Devoxin, @freyacodes, @napstr, @SamOphis