The official @ffmpeg/core-mt package turned out to be a GPL build, not LGPL. Here’s how we found out, why hiding the encoder in the UI doesn’t fix a compile-time license problem, the self-built replacement, and the real linker bug we hit shipping it.
A WebCodecs spike found H.264 completely unavailable in its own test browser, yet proved the demux-decode-encode-mux-play pipeline for real with VP9+Opus. Here is the two-stage story: what the spike proved and could not prove, two real bugs it hit, and why production shipped Mediabunny instead of the spike’s mp4box.js + mp4-muxer.