Bloat Libvpx _top_ 〈LIMITED · Strategy〉

From the perspective of an IoT developer with 32 MB of total flash storage: The default libvpx is a nightmare of redundant symbol tables and CPU dispatchers that will never fire on their hardware.

./configure --disable-runtime-cpu-detect --enable-static This tells the compiler: "Don't write the dispatcher. Just write the code for the CPU I am sitting on." This can cut binary size by 30-40%. Don't need VP8? (You probably don't; you want VP9). Or vice versa? You can't fully disable one easily, but you can reduce features: bloat libvpx

If you are just decoding video (not encoding), consider dav1d for AV1 or ffmpeg with --enable-libvpx --disable-everything . But that is a story for another day. From the perspective of an IoT developer with

Until then, if your binary is too fat, remember: It's not the codec's fault. You just compiled the reference implementation for the reference machine. Trim the flags, target your silicon, and libvpx will slim down. Don't need VP8