gstreamer/subprojects/gstreamer-sharp/sources
Jakub Adam 38a3af96d0 gstreamer-sharp: Fix App{Src,Sink} constructors
Apparently GtkSharp expects each object has only one ToggleRef at any
time. Assigning element.Handle into Raw has a consequence that second
ToggleRef attempts to get created but fails on g_object_unref () that
breaks a GObject assertion:

  toggle_refs_notify: assertion failed: (tstack.n_toggle_refs == 1)

This is because toggle references should be removed with
g_object_remove_toggle_ref(), not a simple unref().

In order to avoid duplicate toggle references, introduce
ElementFactory.MakeRaw(), which creates a GstElement without its
accompanying C# object. The returned raw pointer can be assigned into
another GLib.Object without trouble.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1885>
2022-03-08 12:01:13 +00:00
..
custom gstreamer-sharp: Fix App{Src,Sink} constructors 2022-03-08 12:01:13 +00:00
generated Back to development 2022-02-04 22:59:41 +00:00
AssemblyInfo.cs.in Move files from gstreamer-sharp into the "subprojects/gstreamer-sharp/" subdir 2021-09-24 16:16:29 -03:00
Gst-1.0-merged.metadata Move files from gstreamer-sharp into the "subprojects/gstreamer-sharp/" subdir 2021-09-24 16:16:29 -03:00
gstreamer-sharp-api.raw Move files from gstreamer-sharp into the "subprojects/gstreamer-sharp/" subdir 2021-09-24 16:16:29 -03:00
gstreamer-sharp.dll.config Move files from gstreamer-sharp into the "subprojects/gstreamer-sharp/" subdir 2021-09-24 16:16:29 -03:00
gstreamer-sharp.metadata Move files from gstreamer-sharp into the "subprojects/gstreamer-sharp/" subdir 2021-09-24 16:16:29 -03:00
meson.build gstreamer-sharp: Fix App{Src,Sink} constructors 2022-03-08 12:01:13 +00:00