I was recently asked to add gstreamer to the Nim bindings, see
I had seen the name gstreamer a few times already, but had no idea what it is before. OK, found the wikipedia page and gstreamer homepage. Seems to be related to video.
But is there a reason that someone may need language bindings for that? I am a bit skeptical – about one year ago someone asked to add libvte, I did it, and that user never came back.
Gstreamer seems to be different to most other gtk core libs, also documentation differs. So it works not out of the box with my gintro gobject-introspection language binding generator. One issue is that there are a few classes that have no parents. I saw that before only for data types GObject and GParamSpec. But Gst has for example
/usr/share/gir-1.0/Gst-1.0.gir <class name="Int64Range" c:symbol-prefix="int64_range" glib:type-name="GstInt64Range" glib:get-type="gst_int64_range_get_type" glib:fundamental="1"> </class>
Do we have an idea what is special about these classes without parent? My feeling was, that the Gobject Type system is based on GObjects as base types, well maybe on GInitiallyUnowned.
At least I have to write some special code for these classes without parent. For GObject itself that was easy, because it is just the Root class.
A google search for “GstInt64Range” gave me no great results unfortunately.