Why host OS should install ffmpeg too, after npm installed?

I follow this tutorial ffmpeg.

you see the npm install fluent-ffmpeg, there have installed it by node.

but why it still needs to be installed on host OS?

brew install ffmpeg

I mean whether the package fluent-ffmpeg is not enough, what's the function of ffmpeg on host OS?

If I use electron develop a macos app, and build it to pkg, when other macos install it, the macos should install ffmpeg then can use it?


You are not installing ffmpeg when you install fluent-ffmpeg. All that fluent-ffmpeg does is provide a "pretty" abstraction layer so that you don't have to fight the ffmpeg command line.

https://github.com/fluent-ffmpeg/node-fluent-ffmpeg

This library abstracts the complex command-line usage of ffmpeg into a fluent, easy to use node.js module. In order to be able to use this module, make sure you have ffmpeg installed on your system (including all necessary encoding libraries like libmp3lame or libx264).

ffmpeg is the tool doing all the work and heavy lifting. fluent-ffmpeg just gives you an easy to use interface from node rather than having to run ffmpeg yourself.

If you write a program that uses ffmpeg and give it to another user then that user will also need to have ffmpeg installed.