Giter Site home page Giter Site logo

lavalink's Introduction

Lavalink

A standalone audio sending node based on Lavaplayer and Koe. Allows for sending audio without it ever reaching any of your shards.

Being used in production by FredBoat, Dyno, LewdBot, and more.

A basic example bot is available.

Lavalink uild

Features

  • Powered by Lavaplayer
  • Minimal CPU/memory footprint
  • Twitch/YouTube stream support
  • Event system
  • Seeking
  • Volume control
  • REST API for resolving Lavaplayer tracks, controlling players, and more
  • Statistics (good for load balancing)
  • Basic authentication
  • Prometheus metrics
  • Docker images
  • Plugin support (beta)

Requirements

  • Java 11* LTS or newer required.
  • OpenJDK or Zulu running on Linux AMD64 is officially supported.

Support for Darwin (Mac), Windows AMD64, and Linux ARM (Raspberry Pi) is provided on a best-effort basis. This is dependent on Lavaplayer's native libraries.

Lavaplayer currently supports following architectures:

Darwin (M1 & Intel), Linux aarch32, Linux aarch64, Linux ARMv7+ 32/64, Linux ARMHF(v6) 32, Linux i386 32, Linux x86 64, Windows i386 32 and Windows x86 64

JDA-NAS(Native Audio Buffer) & the Timescale filter are currently not supported on following architectures:

Linux ARMHF(v6) 32 and Linux aarch32

Support for other JVMs is also best-effort. Periodic CPU utilization stats are prone not to work everywhere.

*Java 11 appears to have some issues with Discord's TLS 1.3. Java 14 has other undiagnosed HTTPS problems. Use Java 13. Docker images have been updated. See #258, #260

Changelog

Please see here

Versioning policy

Lavalink follows Semantic Versioning.

Given a version number MAJOR.MINOR.PATCH, the following rules apply:

MAJOR breaking API changes
MINOR new backwards compatible features
PATCH backwards compatible bug fixes

Additional labels for release candidates are available as extensions to the MAJOR.MINOR.PATCH-rcNUMBER(3.6.0-rc1) format.

Client libraries:

Client Platform Compatible With REST API Support Additional Information
Lavalink-Client Java JDA/Any
Lavalink.kt Kotlin JDA/Kord/Any Kotlin Coroutines
Lavalink.py Python Any
lavasnek_rs Python Any* *asyncio-based libraries only
lavaplayer-py Python Any* *asyncio-based libraries only
Mafic Python discord.py V2/nextcord/disnake/py-cord
Wavelink Python discord.py V2
Pomice Python discord.py V2
discord-ext-lava Python discord.py
Lavapy Python discord.py Unmaintained
Magma Python discord.py Unmaintained
interactions-lavalink Python interactions.py
Lavadeno Deno Any
LavaJS Node.js Any Unmaintained
LavaClient Node.js Any
Lavacoffee Node.js Any Unmaintained
Lavacord Node.js Any Unmaintained
FastLink Node.js Any
Moonlink.js Node.js Any
@skyra/audio Node.js discord.js Archived
Poru Node.js Any
Shoukaku Node.js Any
Lavaudio Node.js Any
Gorilink Node.js discord.js Archived/Unmaintained
SandySounds Node.js Any Unmaintained
eris-lavalink Node.js eris Unmaintained
Victoria .NET Discord.Net
Lavalink4NET .NET Discord.Net/DSharpPlus
DSharpPlus.Lavalink .NET DSharpPlus
Lavalink.NET .NET Any Unmaintained
SharpLink .NET Discord.Net Unmaintained
DisCatSharp.Lavalink .NET DisCatSharp
DisGoLink Go Any
waterlink Go Any
gavalink Go Any Unmaintained
Lavalink-rs Rust Any* *tokio-based libraries only
Coglink C Concord

Or alternatively, you can create your own client library, following the implementation documentation. Any client libraries marked with Unmaintained have been marked as such as their repositories have not received any commits for at least 1 year since time of checking, however they are listed as they may still support Lavalink, and/or have not needed maintenance, however keep in mind that compatibility and full feature support is not guaranteed.

Server configuration

Download binaries from the GitHub actions or the GitHub releases(specific versions prior to v3.5 can be found in the CI Server).

Put an application.yml file in your working directory. (Example here)

Run with java -jar Lavalink.jar

Docker images can be found under packages with old builds prior to v3.7.4 being available on Docker Hub.

lavalink's People

Contributors

freyacodes avatar topi314 avatar schnapster avatar devoxin avatar repulser avatar bytealex avatar duncte123 avatar walkyst avatar toxicmushroom avatar shredder121 avatar fabricio20 avatar samophis avatar vicky5124 avatar thewsomeguy avatar viztea avatar devyukine avatar muh9049 avatar theessem avatar minndevelopment avatar thepedroo avatar anothergenz avatar mlnrdev avatar ooliver1 avatar neuheit avatar evieepy avatar ducc avatar cloudwithax avatar allvaa avatar mrjacz avatar dalibortrampota avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.