
Company News
Socket Joins the OpenJS Foundation
Socket is proud to join the OpenJS Foundation as a Silver Member, deepening our commitment to the long-term health and security of the JavaScript ecosystem.
@w3vish/ffmpeg-installer
Advanced tools
A fast and lightweight cross-platform FFmpeg & FFprobe binary installer for Node.js, supporting Linux, macOS, and Windows.
A cross-platform FFmpeg binary installer for Node.js applications. This package provides a simple way to download and configure FFmpeg binaries for your platform, making it easy to use FFmpeg in your Node.js projects without manual installation.
This package only supports ES Modules. CommonJS require() is not supported.
# Install the package
npm install @w3vish/ffmpeg-installer
After installation, run the CLI tool to install binaries:
# Install binaries via CLI
npx @w3vish/ffmpeg-installer
The CLI will prompt you to select which components to install:
// Import the package
import FFmpegInstaller from '@w3vish/ffmpeg-installer';
// Access the data directly
console.log('FFmpeg path:', FFmpegInstaller.ffmpeg.path);
console.log('FFprobe path:', FFmpegInstaller.ffprobe.path);
console.log('FFmpeg version:', FFmpegInstaller.ffmpeg.version);
console.log('Platform:', FFmpegInstaller.platform);
console.log('Architecture:', FFmpegInstaller.arch);
import { spawn } from 'child_process';
import FFmpegInstaller from '@w3vish/ffmpeg-installer';
const process = spawn(FFmpegInstaller.ffmpeg.path, [
'-i', 'input.mp4',
'-c:v', 'libx264',
'output.mp4'
]);
process.on('close', (code) => {
console.log(`Process exited with code ${code}`);
});
import ffmpeg from 'fluent-ffmpeg';
import FFmpegInstaller from '@w3vish/ffmpeg-installer';
// Set paths
ffmpeg.setFfmpegPath(FFmpegInstaller.ffmpeg.path);
ffmpeg.setFfprobePath(FFmpegInstaller.ffprobe.path);
// Use fluent-ffmpeg
ffmpeg('input.mp4')
.output('output.mp4')
.on('end', () => {
console.log('Conversion finished');
})
.run();
When running the installer CLI, you can specify options:
npx @w3vish/ffmpeg-installer --platform=darwin-arm64 --ffmpeg-only
Available options:
--platform=<platform>: Specify platform (win32-x64, darwin-arm64, linux-x64, etc.)--ffmpeg-only: Install only FFmpeg--ffprobe-only: Install only FFprobeThe package exports an FFmpegInstaller object with this structure:
{
ffmpeg: {
path: '/path/to/ffmpeg',
version: 'v1.0.0',
url: 'https://github.com/w3vish/ffmpeg-installer/releases/download/v1.0.0/linux-x64-ffmpeg'
},
ffprobe: {
path: '/path/to/ffprobe',
version: 'v1.0.0',
url: 'https://github.com/w3vish/ffmpeg-installer/releases/download/v1.0.0/linux-x64-ffprobe'
},
platform: 'linux',
arch: 'x64'
}
The package includes TypeScript definitions:
// Main installer result
export interface FFmpegInstaller {
ffmpeg?: BinaryInfo;
ffprobe?: BinaryInfo;
platform: string;
arch: string;
}
// Binary information
export interface BinaryInfo {
path: string;
version: string;
url: string;
}
If you encounter permission errors when running the binaries on Linux/macOS:
chmod +x /path/to/ffmpeg
chmod +x /path/to/ffprobe
If the installation fails, try:
npm install @w3vish/ffmpeg-installer --unsafe-perm
MIT
FAQs
A fast and lightweight cross-platform FFmpeg & FFprobe binary installer for Node.js, supporting Linux, macOS, and Windows.
The npm package @w3vish/ffmpeg-installer receives a total of 85 weekly downloads. As such, @w3vish/ffmpeg-installer popularity was classified as not popular.
We found that @w3vish/ffmpeg-installer demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Company News
Socket is proud to join the OpenJS Foundation as a Silver Member, deepening our commitment to the long-term health and security of the JavaScript ecosystem.

Security News
npm now links to Socket's security analysis on every package page. Here's what you'll find when you click through.

Security News
A compromised npm publish token was used to push a malicious postinstall script in cline@2.3.0, affecting the popular AI coding agent CLI with 90k weekly downloads.