Skip to content

200percentmicky/chadtube

 
 

ChadTube

A fork of DisTube!

This fork is mainly used for ChadMusic, but can be used for your project if you like. It adds support for multiple filters with interchangable values during playback. All arguments for each provided filter can be changed at anytime, and static filters will no longer need to be provided when initializing the client.

The following has been changed:

  • FilterManager
    • Live streams are refreshed when filters are applied.
    • add(), remove(), and has() have been removed. Instead, set() manages all filters within the manager.
    • set() parameters and types are as followed:
      • set(filterName: string | undefined, filterValue: string | undefined) => Filter[]
      • filterName is the name of the filter. Providing a null value removes all active filters.
      • filterValue is the ffmpeg argument to provide to the filter. Providing a null value removes the specified filter.
  • lodash has been added as a dependency.

Warning

I will only be providing support for the functionality that was altered or added in this fork. For all other issues pertaining to DisTube, please create an issue in the main repository instead.

...and now for something completely different.


GitHub Workflow Status node-current npm peer dependency version Codecov branch
npm GitHub Repo stars Discord

Buy Me a Coffee at ko-fi.com

DisTube

DisTube is a comprehensive Discord music bot library built for Discord.js, offering simplified music commands, effortless playback from diverse sources, and integrated audio filters.

🌟 Features

  • Easy Integration: Built on top of discord.js v14 and @discordjs/voice
  • Voice Management: Robust handling of voice connections and queue management
  • Audio Filters: Built-in filters (bassboost, echo, karaoke, etc.) and custom filter support
  • Plugin System: Extensible architecture supporting various music sources through plugins
  • Type Safety: Written in TypeScript for better development experience
  • Active Community: Join our Discord Support Server for help

πŸ“‹ Requirements

πŸ”’ Encryption Libraries

Note

You only need to install one of these libraries if your system does not support aes-256-gcm (verify by running require('node:crypto').getCiphers().includes('aes-256-gcm')).

πŸš€ Installation

npm install distube @discordjs/voice @discordjs/opus

For FFmpeg installation:

Note

Alternative FFmpeg builds available here

πŸ“š Documentation

🀝 Contributing

Contributions are welcome! Please read our Contributing Guidelines before submitting a pull request.

πŸ“„ License

Licensed under MIT License

πŸ’– Support

Support me on Ko-fi

About

Dev fork of DisTube, used for ChadMusic

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 100.0%