[Bug 789055] Gst.Bin __init__ changed behavior between 1.10 and 1.12 GStreamer version

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Mon Jan 15 08:39:06 UTC 2018


https://bugzilla.gnome.org/show_bug.cgi?id=789055

--- Comment #5 from Andreu N <andreu.n1 at gmail.com> ---
Neither on my labtop or remote machine, python-gst is installed.

Curiously, you are getting same bug on version 1.12 than me on version 1.10.
The problem is in class <class 'gi.overrides.Gst.Bin'>. Looking at code it
looks python-gi is overriding Bin base class (I don't know why it is needed).
https://cgit.freedesktop.org/gstreamer/gst-python/tree/gi/overrides/Gst.py#n65

I guess there was a problem with function `override` from python-gi. But it was
solved in with a refactor
(https://gitlab.gnome.org/GNOME/pygobject/commit/149c31beced944c72fba6ca6e096c81c1100ea2b).

So, in brief, gst-python (gi) was using function override from pygobject but it
wasn't worked properly. Now it works but gst-python implementation prevents to
set construct-only properties in custom Bin classes.

>From my point of view, it should be solved on gst-python doing something like:

```
File: gi/overrides/Gst.py
Line: 56

class Bin(Gst.Bin):
    def __init__(self, name=None, **kwargs):
        Gst.Bin.__init__(self, name=name, **kwargs)

    def add(self, *args):
        for arg in args:
            if not Gst.Bin.add(self, arg):
                raise AddError(arg)
```

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list