-
Notifications
You must be signed in to change notification settings - Fork 28.9k
Description
The Flutter Engine ships codecs for commonly supported formats. When the application requests image decoding from a file, these built-in codecs are queried. If these codecs are unable to decompress the image, the engine asks the platform codecs to try. In this way, the application gets a base set of codecs they can depend on while also getting support for newer codecs available on the platform.
However, the codecs supported on the platform are usually a superset of those supported by the Flutter Engine.
Removing all built-in codecs from the Flutter Engine is possible with minimal impact to end users. However, codecs like WebP were added to iOS in iOS 14 while Flutter supports versions as old as iOS 12. Other codecs like PNG and JPEG have always been available on iOS but there might be differences in the way the engine codecs and the platform codecs work.
We should consider removing these codecs to save on binary size.