The module returns a file path to the binary for the target operating system.
It is a modified version from the original ffmpeg-static to use electron-builder
file macros in package.json
, where OS name are mac
, linux
or win
In ffmpeg-static
, recognising the target OS is done with os.platform()
where mac os x is recognised asdarwin
rather then mac
.
The need to tailor ffmpeg-static to use with electron-builder
came from a use cases such as that of autoEdit.io.
See here for more info on How to package ffmpeg with the fluent-ffmpeg node library in electron, so that you only ship the binaries for the target operating system
There is also ffprobe-static-electron
ffmpeg static binaries for Mac OSX and Linux and Windows
This module is installed via npm:
$ yarn add upscayl-ffmpeg
Returns the path of a statically linked ffmpeg binary on the local filesystem.
var ffmpeg = require('upscayl-ffmpeg');
console.log(ffmpeg.path);
// /Users/eugeneware/Dropbox/work/ffmpeg-static/bin/darwin/x64/ffmpeg
Currently supports Mac OS X (64-bit), Linux (32 and 64-bit) and Windows (32 and 64-bit).
Currently version 3.1
is installed for Mac and Linux, and 3.0.1
for
Windows.
I pulled the versions from the ffmpeg static build pages linked from the official ffmpeg site. Namely:
NB: Open to pull requests to update this module with the latest versions.
Ideally I'd like to dynamically pull the latest version down, but this requires
access to 7-zip which and being able to untar xz
files.
And I couldn't find a good js-only decoders for these files either.
So, for now it's just embedded binaries.