I'm using Windows (64-bit) with Node.js and npm installed. In my project file, I have run the following commands:
npm init
npm install discord.js --save
npm install ffmpeg --save
Now i just created the code for a basic bot here is the main code. I list here the important:
if (message.content === '!play' && message.member.roles.has(message.guild.roles.find("name", config.role_name).id)) {
if (!message.member.voiceChannel) return log("?");
message.member.voiceChannel.join().then(function (connection){
});
}
Then, in Discord, I say the following:
[1517932146] Musik bot loaded
(node:35760) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 2): Error: FFMPEG not found
I have already tested the following:
- reinstallation of everything
- others of the require names e.t.z.
- simplify the code
So if you have any ideas then let me know.
Solution
npm i ffmpeg-binaries@3.2.2-3
You need to actually install ffmpeg, the
ffmpeg
module on NPM simply exports a wrapper API for ffmpeg's command-line interface.You can download ffmpeg's binaries from the website or use a package manager (like
apt
on Ubuntu,brew
on Mac orchoco
on Windows) which usually takes care of dropping the binaries into a directory that is present in thePATH
.As far as I can see, you never actually installed
ffmpeg
. Using theffmpeg
node module won't get you anywhere unless you install the binaries.You can also use
apt
,brew
or in your casechoco
which makes things go alot faster. Here is a guide on how to do it in windows.Once it is installed you will be able to use many node modules such as
opusscript
and much more.