gtk4: Improve handling of RGBA GL textures in GTK
GTK 4.14 comes with a new GL renderer that does not support GL shader nodes anymore, so the conversion from non-premultiplied alpha to premultiplied alpha has to happen differently.
For GTK 4.14 or newer we use the correct format directly when building the texture, but only if a GLES3+ context is used. In that case the NGL renderer is used by GTK, which supports non-premultiplied formats correctly and fast.
For GTK 4.10-4.12, or 4.14 and newer if a GLES2 context is used, we use a self-mask to pre-multiply the alpha.
For GTK before 4.10, we use a GL shader and hope that it works.
Fixes #488 (closed)
Merge request reports
Activity
mentioned in issue #488 (closed)
- Resolved by Sebastian Dröge
assigned to @gstreamer-merge-bot
mentioned in commit slomo/gst-plugins-rs@98a27112
mentioned in commit slomo/gst-plugins-rs@1f3a7bf1
mentioned in commit slomo/gst-plugins-rs@c20a8a08
assigned to @slomo and unassigned @gstreamer-merge-bot
- Resolved by Sebastian Dröge
I couldn't merge this branch: CI failed! See pipeline https://gitlab.freedesktop.org/slomo/gst-plugins-rs/-/pipelines/1097536.
added 14 commits
-
98a27112...09e9c047 - 10 commits from branch
gstreamer:main
- 4183bc6f - gtk4: Improve handling of RGBA GL textures in GTK
- acd642a7 - gtk4: Always draw a black background behind the video frame
- 150925b9 - gtk4: Add property to the paintable for selecting the background color
- e266bbcf - ci: Ignore GTK4 plugin when building with `--all-features`
Toggle commit list-
98a27112...09e9c047 - 10 commits from branch
assigned to @gstreamer-merge-bot and unassigned @slomo
mentioned in commit slomo/gst-plugins-rs@80355011
added 4 commits
Toggle commit listmentioned in commit slomo/gst-plugins-rs@76b9836e
mentioned in commit slomo/gst-plugins-rs@9971f71e
mentioned in commit slomo/gst-plugins-rs@0fe4e0bf
assigned to @slomo and unassigned @gstreamer-merge-bot