A Lavalink WebSocket & API wrapper for discord.py
Project description
Documentation
Installation
Requirements
- PostgresSQL 14 server
- MacOS: PostgresSQL
- Windows: PostgresSQL
- Linux: PostgresSQL
- Python 3.11
- Discord.py 2.1.0+ bot
- Lavalink v4.0.0+ server
Supported sources
Built-in:
- youtube (Deprecated with LL 4.0.5)
- soundcloud
- bandcamp
- twitch
- vimeo
- http
- local
With YouTube-plugin:
- youtube
With LavaSrc
- spotify
- applemusic
- deezer
- youtube
- flowery-tts
With DuncteBot-plugin:
- getyarn.io
- clypit
- tts
- pornhub
- ocremix
- tiktok
- mixcloud
- soundgasm
With Google Cloud TTS:
- gcloud-tts
With Sponsorblock-Plugin:
- sponsorblock
With LavaSearch:
With LavaLyrics:
Supported Lavalink features
- Supports all features of Lavalink
- Filters
- IP Rotation
- Plug-ins
Features
- Multiple node support
- Node region assignment based on IP
- Track cache for the last 30 days to reduce the number of duplicated queries
- Managed local node with auto-restart and auto update
- Many helper methods and functions
- Support for multiple cogs to access the library at once
- Playlists and EQ saved at a library level to be shared with cogs
- Player state persistence
- Upon library state being shutdown all player states are saved and restored on library startup
- History of played tracks available for players
- RadioBrowser.org API to retrieve radio stations available for players
- M3U, PLS and PYLAV text file parser to convert contents into a playlist (p.s. Lavalink must support the format/coded of files still)
System Requirements
With a locally hosted Postgres server and locally hosted/managed lavalink node (recommended - Best performance):
- CPU: 3 cores or more
- RAM: 4GB or more
- Disk Space: 10GB or more (NVME Ideally, SSD OK)
With a locally hosted Postgres server and externally hosted lavalink node (Okay performance):
- CPU: 2 cores or more
- RAM: 3GB or more
- Disk Space: 10GB or more (NVME Ideally, SSD OK)
With an externally hosted Postgres server and locally hosted/managed lavalink node (Poor performance):
- CPU: 2 cores or more
- RAM: 2GB or more
- Disk Space: 10GB or more (SSD)
With an externally hosted Postgres server and externally hosted lavalink node (Worst performance):
- CPU: 1 cores or more
- RAM: 1GB or more
- Disk Space: 10GB or more (SSD)
Credits
- Topi for all the work done to Lavalink and implementing direct requests to make PyLav even better.
- Devoxin - Lavalink.py for the original ideas for implementation.
- globocom/m3u8 for the M3U8 parser which I made asynchronous found in m3u8_parser.
- andreztz/pyradios for the radio parser which I made asynchronous found in radio.
- Lifeismana for the custom Red-DiscordBot docker image which added Python3.11 support until Phasecore's image is updated.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file py_lav-1.15.14.tar.gz.
File metadata
- Download URL: py_lav-1.15.14.tar.gz
- Upload date:
- Size: 777.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.11.9 Linux/6.5.0-1023-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b50ad8a4b4318eb3b46ecb63bee4b6a8e56398ba733dca0cec0731c944a475a4
|
|
| MD5 |
5238281f9922c34bf0b01f830e3ebba6
|
|
| BLAKE2b-256 |
f148412554527e9e38226fbee0dcc5da75c779843056ff1fa8c483eca5d96c2a
|
File details
Details for the file py_lav-1.15.14-py3-none-any.whl.
File metadata
- Download URL: py_lav-1.15.14-py3-none-any.whl
- Upload date:
- Size: 2.0 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.11.9 Linux/6.5.0-1023-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3822b74dadf6215cea3fd72676dce79e38d124e32ddaa46a574f40432c299bcf
|
|
| MD5 |
bfe5b3ac58a07a599cb76d78671e7dcb
|
|
| BLAKE2b-256 |
ce3092e7e51b7c82c39362d9fbd20f6a4e3cde9bd28b32a7a34dd2e558c40e74
|