Skip to content

Pre-compiled FFmpeg binaries for Node.js. Static builds with x264, x265, VP9, AV1, Opus and more. Supports macOS, Linux (glibc/musl), and Windows with hardware acceleration variants.

License

Notifications You must be signed in to change notification settings

pproenca/webcodecs-ffmpeg

Repository files navigation

webcodecs-ffmpeg

Statically-linked FFmpeg binaries for Node.js native addons.

CI npm

Install

npm install @pproenca/webcodecs-ffmpeg

The package auto-selects the correct binary for your platform.

Packages

Package Codecs License Use Case
@pproenca/webcodecs-ffmpeg VP8/9, AV1, Opus, Vorbis, MP3 LGPL-2.1+ Commercial/proprietary apps
@pproenca/webcodecs-ffmpeg-non-free All above + H.264, H.265 GPL-2.0+ Open source projects

Default (@pproenca/webcodecs-ffmpeg) is safe for commercial use with LGPL compliance.

Use @pproenca/webcodecs-ffmpeg-non-free for x264/x265 codecs (requires GPL compliance - full source disclosure).

Platforms

Platform Architecture Status
macOS ARM64 (Apple Silicon) Supported
macOS x86_64 (Intel) Supported
Linux x86_64 Supported
Linux ARM64 Supported
Windows x86_64 Planned

Usage

These packages provide FFmpeg headers and static libraries for building native Node.js addons. See Native Addon Usage for integration with node-gyp and CMake.

const ffmpeg = require('@pproenca/webcodecs-ffmpeg');

console.log(ffmpeg.include);  // Path to headers
console.log(ffmpeg.lib);      // Path to static libraries
console.log(ffmpeg.bin);      // Path to ffmpeg binary

License

Multi-licensed depending on codec selection. See LICENSE for details.

Build scripts and tooling: MIT

About

Pre-compiled FFmpeg binaries for Node.js. Static builds with x264, x265, VP9, AV1, Opus and more. Supports macOS, Linux (glibc/musl), and Windows with hardware acceleration variants.

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •