Polyfill for WebCodecs, powered by ffmpeg.wasm
Go to file
2019-10-30 17:57:55 +08:00
.github Test node 10 only 2019-10-23 21:34:56 +08:00
docs/images Add eslint & update README 2019-10-23 20:46:03 +08:00
examples Add logging feature 2019-10-30 17:57:55 +08:00
scripts Refactor to worker version 2019-10-24 07:47:11 +08:00
src Add logging feature 2019-10-30 17:57:55 +08:00
tests/assets Init commit 2019-10-20 22:37:37 +08:00
.eslintrc Merge master 2019-10-25 19:18:23 +08:00
.gitattributes Init commit 2019-10-20 22:37:37 +08:00
.gitignore Add webpack 2019-10-23 21:52:04 +08:00
.npmignore Add eslint & update README 2019-10-23 20:46:03 +08:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2019-10-23 14:21:41 +08:00
CONTRIBUTING.md Create CONTRIBUTING.md 2019-10-23 14:22:11 +08:00
LICENSE Create LICENSE 2019-10-23 14:20:17 +08:00
package-lock.json Enable log output and remove video file from wasm mem after transcode 2019-10-30 16:21:21 +08:00
package.json Merge master 2019-10-25 19:18:23 +08:00
README.md Merge branch 'master' into develop 2019-10-25 19:07:48 +08:00

FFmpeg.js

Actions Status Maintenance License: MIT Code Style Downloads Total Downloads Month

ffmpeg.js

A FFmpeg WebAssembly version built from scratch, you can learn how to do it from this series of stories: Build FFmpeg WebAssembly version (=ffmpeg.js).


Installation

$ npm install @ffmpeg/ffmpeg

Example

const fs = require('fs');
const { createWorker } = require('@ffmpeg/ffmpeg');

const worker = createWorker();

(async () => {
  await worker.load();
  const { data } = await worker.transcode('./test.avi', 'mp4');
  fs.wrieFileSync('./test.mp4', data);
})();