summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThibault Saunier <tsaunier@gnome.org>2016-02-08 11:30:08 +0100
committerThibault Saunier <tsaunier@gnome.org>2016-02-08 11:30:08 +0100
commit8b94b967a045a70f2d640fb9b19649217164566a (patch)
tree5ef744bd040b7141b2e871bf9c4e40f9da10353c
parent1fe791cafa00e70b9b1753930286aa5cf7ce5f0d (diff)
Avoid warning about gi.require_version not being called
-rw-r--r--gi/overrides/GstPbutils.py9
-rw-r--r--plugin/gstpythonplugin.c17
2 files changed, 24 insertions, 2 deletions
diff --git a/gi/overrides/GstPbutils.py b/gi/overrides/GstPbutils.py
index db16baf..f5b107c 100644
--- a/gi/overrides/GstPbutils.py
+++ b/gi/overrides/GstPbutils.py
@@ -27,11 +27,15 @@
from ..overrides import override as override_
from ..importer import modules
-from gi.repository import Gst
+import gi
+gi.require_version('Gst', '1.0')
+
+from gi.repository import Gst # noqa
GstPbutils = modules['GstPbutils']._introspection_module
__all__ = []
+
def override(cls):
name = cls.__name__
globals()[name] = override_(cls)
@@ -39,6 +43,7 @@ def override(cls):
return cls
+
@override
class EncodingVideoProfile(GstPbutils.EncodingVideoProfile):
def __init__(self, format, preset=None, restriction=None, presence=0):
@@ -51,6 +56,7 @@ class EncodingVideoProfile(GstPbutils.EncodingVideoProfile):
self.set_restriction(restriction)
self.set_presence(presence)
+
@override
class EncodingAudioProfile(GstPbutils.EncodingAudioProfile):
def __init__(self, format, preset=None, restriction=None, presence=0):
@@ -63,6 +69,7 @@ class EncodingAudioProfile(GstPbutils.EncodingAudioProfile):
self.set_restriction(restriction)
self.set_presence(presence)
+
@override
class EncodingContainerProfile(GstPbutils.EncodingContainerProfile):
def __init__(self, name, description, format, preset=None):
diff --git a/plugin/gstpythonplugin.c b/plugin/gstpythonplugin.c
index eb40388..f3b713d 100644
--- a/plugin/gstpythonplugin.c
+++ b/plugin/gstpythonplugin.c
@@ -211,7 +211,7 @@ static gboolean
plugin_init (GstPlugin * plugin)
{
PyGILState_STATE state;
- PyObject *gst, *dict, *pyplugin;
+ PyObject *gi, *require_version, *args, *gst, *dict, *pyplugin;
gboolean we_initialized = FALSE;
GModule *libpython;
gpointer has_python = NULL;
@@ -260,6 +260,21 @@ plugin_init (GstPlugin * plugin)
return FALSE;
}
+ gi = PyImport_ImportModule ("gi");
+ if (!gi) {
+ g_critical ("can't find gi");
+ return FALSE;
+ }
+
+
+ require_version = PyObject_GetAttrString (gi, (char *) "require_version");
+ args = PyTuple_Pack (2, PyUnicode_FromString ("Gst"),
+ PyUnicode_FromString ("1.0"));
+ PyObject_CallObject (require_version, args);
+ Py_DECREF (require_version);
+ Py_DECREF (args);
+ Py_DECREF (gi);
+
gst = PyImport_ImportModule ("gi.repository.Gst");
if (!gst) {
g_critical ("can't find gi.repository.Gst");