gst-plugins-rs/video
Sebastian Dröge 5c21b10841 gtk4: Refactor and simplify GL context handling
Create a single, global GDK GL context and the corresponding GStreamer
GL display and wrapped GStreamer GL context when initializing the first
sink and continue using that for all further sinks.

Additionally, don't create a full GStreamer GL context inside the sink
but only distribute the wrapped GL context in the pipeline so that
elements that actually need a full GL context can create one that is
sharing with that one. The sink itself does not need a full GStreamer GL
context.

Then inside the sink check that any GL memory that arrives was created
by a GL context that can share with the wrapped GDK GL context and only
then use it.

And lastly, use the correct GL contexts for a) creating a sync point and
b) actually waiting on it.

Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/318

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1101>
2023-02-22 14:24:21 +02:00
..
cdg Update versions to 0.9.9 2023-02-09 22:08:17 +02:00
closedcaption Update versions to 0.9.9 2023-02-09 22:08:17 +02:00
dav1d Update versions to 0.9.9 2023-02-09 22:08:17 +02:00
ffv1 Update versions to 0.9.9 2023-02-09 22:08:17 +02:00
gif Update versions to 0.9.9 2023-02-09 22:08:17 +02:00
gtk4 gtk4: Refactor and simplify GL context handling 2023-02-22 14:24:21 +02:00
hsv Update versions to 0.9.9 2023-02-09 22:08:17 +02:00
png Update versions to 0.9.9 2023-02-09 22:08:17 +02:00
rav1e Update versions to 0.9.9 2023-02-09 22:08:17 +02:00
videofx Update versions to 0.9.9 2023-02-09 22:08:17 +02:00
webp Update versions to 0.9.9 2023-02-09 22:08:17 +02:00