GStreamer and GIR

Russel Winder russel at winder.org.uk
Tue Mar 8 09:42:28 UTC 2016


On Tue, 2016-03-08 at 00:27 -0500, Olivier Crête wrote:
> Hi, 
> 
> You don't need gir files to access the plug-ins. They are loaded at
> runtime, you access them through the core GStreamer API (GstElement,
> GstBin, GstPipeline, etc) and you control their properties using
> GObject properties, using g_object_set() in C, I'm not sure how that
> was translated into the D bindings. 
[…]

But the core issue here is that C is an unsuitable programming language
for writing applications. I understand it's use for operating systems
(been there done that) and low-level portable libraries (but even here
the case is weak). For writing applications however, it is just the
wrong tool. Currently the better native code options are C++, D, Rust,
Go, maybe Swift, Haskell, OCaml, etc. All of these languages
(especially C++ obviously) can use C APIs (it is C linkage for APIs
that is crucial here), D, Rust, Go, etc. do though need adapters. These
adapter should be generated rather than hand coded. If GIR is not the
way forward for GStreamer plugin adapter generation for these other
languages, then there ought to be a negotiation about what is the right
way forward. Currently both sides of the adapter appear not to be
moving on this and the only losers are people who want to write
applications in languages such as Rust, Go, Swift rather than C and
C++.

-- 
Russel.
=============================================================================
Dr Russel Winder      t: +44 20 7585 2200   voip: sip:russel.winder at ekiga.net
41 Buckmaster Road    m: +44 7770 465 077   xmpp: russel at winder.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: This is a digitally signed message part
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20160308/2f6e11d7/attachment.sig>


More information about the gstreamer-devel mailing list