News:

--

Main Menu

Install/Download feature modularity and bloat?

Started by Cormy1, July 02, 2025, 01:12:48 AM

Previous topic - Next topic

Cormy1

I really liked Avidemux for how small an application it was, however I've been watching it grow drastically in size since I first started using it.
I don't know what happened in the ~2 weeks between release 241214 and 250101 but the fact that the executable grew nearly 67% between those two versions has alarmed me greatly. I think it's about 3X larger now than when I first started using avidemux.

I know I don't use the vast majority of avidemux features as it is and have no intention to, so I'd wager much of the new featureset will be just as wasted on me.
I'd like to be able to choose which components are installed/downloaded so I can keep the installation to a minimum.

I'm also a bit confused as to what it means to move back to "native" official VC++ builds vs the "regular" win64 builds I've been using up to now. I'll note that I am still using Windows 8.1 as my primary system.
What difference is there in practice between the installers and the ZIP downloads? The ZIP files are clearly much larger at the very least. I believe I started using them preferentially, assuming I can run them from a USB on "any" system just by copying the unpacked files/folders over to the USB.

eumagga0x2a

Avidemux was phasing out Qt5, transitioning to Qt6 for Windows builds as well. Support libraries, namely ICU (international components for unicode), pulled in by Qt6 are partially responsible for inflated installation size, libaom AV1 decoder and encoder components being a major factor too.

In official cross-compiled, ZIP-compressed builds, files needed for plugin development are not removed. Cross-compiled builds with NSIS installer allow to deselect installation of those header and lib files during installation.

Native Windows builds (MSVC-compiled VC++ builds) use Qt Installer Framework (QtIFW) as installer rather than NSIS, which includes a full static build of Qt, huge in size. Creating a custom build of QtIFW with all unused Qt features disabled could reduce installer size a lot – if the project maintainer find time to perform the extra work necessary. Honestly, I doubt that it is worth the effort, but I'm not the maintainer to decide.

ZIP-packaged cross-compiled builds use a fast but relatively weak ZIP compression, NSIS-packaged ones use a much stronger LZMA algo, resulting in a smaller package size.

All Avidemux builds are inherently portable, i.e. installers are for comfort and in order to match user expectations only. Once extracted, the program directory may be moved e.g. to a flash drive (at a cost of much lower launch speed compared to a fast internal drive, especially a SSD). "Portable mode" on Windows means that Avidemux stores user profile in the program directory instead of the default location in %appdata%\avidemux, i.e. the program directory must be writable for the user.