discord-player icon indicating copy to clipboard operation
discord-player copied to clipboard

Version 6 Development

Open twlite opened this issue 1 year ago • 0 comments

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 and server 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) and client 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

Source code is available at https://github.com/Androz2091/discord-player/tree/next Contributions/suggestions are welcome.

twlite avatar Aug 24 '22 17:08 twlite