ffmpegwasm / ffmpeg.wasm

FFmpeg for browser, powered by WebAssembly
https://ffmpegwasm.netlify.app
MIT License
13.63k stars 787 forks source link

Deduplicate wasm binary in distribution #535

Open miraclx opened 11 months ago

miraclx commented 11 months ago

Describe the bug

ffmpeg.wasm v0.12.1

The wasm binary is duplicated into both esm and umd folders, inside core/dist making the final binary unnecessarily larger.

It would be great if we could consolidate these two, and have the js files reference them in the parent.

(core/dist)$ tree -sh
[4.0K]  .
├── [4.0K]  esm
│   ├── [107K]  ffmpeg-core.js
│   └── [ 30M]  ffmpeg-core.wasm
└── [4.0K]  umd
    ├── [107K]  ffmpeg-core.js
    └── [ 30M]  ffmpeg-core.wasm

(core/dist)$ sha256sum esm/ffmpeg-core.wasm 
5577137bc744cd19d1a0a12aa0d1b7ca314ad8e514e616c59f1428f60afdf059  esm/ffmpeg-core.wasm

(core/dist)$ sha256sum umd/ffmpeg-core.wasm 
5577137bc744cd19d1a0a12aa0d1b7ca314ad8e514e616c59f1428f60afdf059  umd/ffmpeg-core.wasm

Observed this while updating dependencies that got bundled into a docker image. Seeing a near-50% increase in uncompressed image size. https://github.com/miraclx/freyr-js/pull/546

CleanShot 2023-08-08 at 00 29 46@2x