Work: Bloat Libvpx

The good news is that the bloat is not inherent to the codec—it is inherent to the default build configuration . You can fight back. Here is the "debloat" regimen for the experienced builder:

To "put together" a leaner version, you can use specific flags during the configuration step: bloat libvpx

VP8 is lean. VP9 is a beast. VP9’s entropy decoder and loop filter are algorithmic marvels, but they require large lookup tables. When you compile libvpx, you get VP9 by default. You cannot strip it out without editing the build scripts manually. The good news is that the bloat is

The default ./configure optimizes for runtime detection , not binary size . It assumes you are Google, compiling once to run on millions of unknown servers. Consequently, it includes runtime dispatchers for every CPU flag. If you are compiling only for an ARM Cortex-A53, you don't need the NEON-optimized routines for a Snapdragon 8 Gen 3—but libvpx includes them anyway. VP9 is a beast