Repository navigation
QuickLook-Next 5.6.13
Animated WebP previews render again
An animated WebP whose frames contain few colours showed nothing but the window's own background.
Each frame is re-encoded as PNG and decoded by GDI+ on the way to WPF, and GDI+ hands a low-colour PNG
back as an indexed bitmap (Format8bppIndexed) - while the conversion to a WriteableBitmap only
knew 24-bit and 32-bit RGB. The frame threw NotSupportedException, the whole frame set came back null
and the preview stayed empty. The line in UserData\QuickLookNext.Exception.log was:
System.NotSupportedException: Unsupported PixelFormat: Format8bppIndexed
Frames are now drawn into a 32-bit ARGB bitmap before conversion, whatever the PNG inside them was
encoded as, so the pixel format no longer matters.
Static WebP files were never affected - they take the ImageMagick path, which was checked with a
lossy file, a lossless one, one with an alpha channel and a 1355 KB photo, including zooming past the
decoded detail.
Verification
- Generated animated WebP files (with and without alpha, a few colours per frame) render with the
exception gone;ql-smoke/make-webp-variants.pybuilds them and
ql-smoke/probe-webp-preview.ps1previews one and prints the log. - The static variants (lossy, lossless, alpha, large photo) still render, including after zooming.
- Unit tests 145/145; build clean, 0 warnings.
Upgrading
Version 5.6.13. Automatic update installs straight over the top; UserData is untouched.