discord-player
discord-player copied to clipboard
Version 6 Development
Issue tracker for v6 development
Features that shall be implemented
- Nodes
Nodes allow the application to execute heavy tasks on a separate thread. Discord Player v6 will make the use of these
nodes
to handle voice efficiently. These nodes will communicate with the base player instance on the main thread via ipc. - Hooks Discord Player will implement various hooks to make it more customizable. Currently planned hooks are of 2 types, one that handle search queries only and the other ones handle everything else related to streaming. These hooks will have ability to alter various event flow, such as altering the state before volume is updated, altering the stream, and so on. This includes optional query caching for faster results.
- Library independent Discord Player will step out of discord.js and will support every JavaScript libs out there. This includes some popular libs such as Eris.
- Remote
Discord Player will provide a
client
andserver
packages that can be used to run discord-player entirely on a separate host. The server shall expose a websocket connection (and possibly a REST API) andclient
will be used to interact with the server.discord-player
itself wont be a direct client and it will instead use core clients to communicate.
Tasks
- [ ] Monorepo
- [ ] discord-player
- [ ] Player partial
- [ ] GuildQueue partial
- [ ] Playlist
- [ ] AudioTrack partial
- [ ] others
- [ ] core
- [ ] AudioNode partial
- [ ] Efficient node distribution
- [x] Event Dispatcher
- [x] Subscription Manager
- [ ] Server
- [ ] Client
- [x] utils
- [x] Queue
- [x] others
- [ ] Helpers
- [ ] Hooks
- [ ] Stream Agent
- [ ] discord-player
Source code is available at https://github.com/Androz2091/discord-player/tree/next Contributions/suggestions are welcome.