feat: Add click-to-play gif previews
Adds widgets and backends for
- WebP Anmations: Since Gst has no decoder for animated WebPs, we require to extract and decode each frame, before we can feed them into a pipeline to display them in a Gtk4 Paintable Sink.
- Gif Animations: Gst offers suitable decoders, hence we can playback those directly.
In case of errors, the widgets fall back to opening the default image viewer of the OS.
New requirements
- Requires
gstreamer-plugins-rsforgtk4paintablesink. - Requires
gstreamer-plugins-badforwebpdec.
TODOs:
-
CI: In principle those are missing pyright stubs errors. -
Errors are not yet displayed in the UI: We show the error in the log and open the default image viewer on error instead. -
Tests are missing: Test images just need to be uploaded somewhere else -
List gstreamer-plugins-badas an optional requirement in README.md -
Add gst-plugins-rs to Windows build -
Decide on how to proceed with Windows mime-type detection (webp) -
Change test image paths -
Fix CI
Fixes #10708 (closed)
Edited by Daniel Brötzmann