mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-01-03 14:08:56 +00:00
python: Add a Gst.init_python function to be called from plugins
Plugins know that they will be initialized after Gst was initialized so they can call the initialization function dedicated for the python bindings Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2675>
This commit is contained in:
parent
37366ff2f4
commit
fab64c0b3a
7 changed files with 14 additions and 5 deletions
|
@ -29,7 +29,7 @@ except ImportError:
|
|||
raise
|
||||
|
||||
|
||||
Gst.init(None)
|
||||
Gst.init_python()
|
||||
|
||||
AUDIO_FORMATS = [f.strip() for f in
|
||||
GstAudio.AUDIO_FORMATS_ALL.strip('{ }').split(',')]
|
||||
|
|
|
@ -15,7 +15,7 @@ from gi.repository import Gst, GObject, GstBase, GstVideo
|
|||
|
||||
import numpy as np
|
||||
|
||||
Gst.init(None)
|
||||
Gst.init_python()
|
||||
FIXED_CAPS = Gst.Caps.from_string('video/x-raw,format=GRAY8,width=[1,2147483647],height=[1,2147483647]')
|
||||
|
||||
class ExampleTransform(GstBase.BaseTransform):
|
||||
|
|
|
@ -16,7 +16,7 @@ import gi
|
|||
gi.require_version('GstBase', '1.0')
|
||||
|
||||
from gi.repository import Gst, GObject, GstBase
|
||||
Gst.init(None)
|
||||
Gst.init_python()
|
||||
|
||||
#
|
||||
# Simple Identity element created entirely in python
|
||||
|
|
|
@ -20,7 +20,7 @@ gi.require_version('GObject', '2.0')
|
|||
|
||||
from gi.repository import Gst, GObject, GstBase
|
||||
|
||||
Gst.init(None)
|
||||
Gst.init_python()
|
||||
|
||||
try:
|
||||
from PIL import Image
|
||||
|
|
|
@ -22,6 +22,8 @@ except ImportError:
|
|||
Gst.error('py_audiotestsrc requires numpy')
|
||||
raise
|
||||
|
||||
Gst.init_python()
|
||||
|
||||
OCAPS = Gst.Caps.from_string (
|
||||
'audio/x-raw, format=F32LE, layout=interleaved, rate=44100, channels=2')
|
||||
|
||||
|
|
|
@ -21,7 +21,7 @@
|
|||
# $ gst-launch-1.0 videotestsrc ! pymysink://
|
||||
|
||||
from gi.repository import Gst, GObject, GstBase
|
||||
Gst.init(None)
|
||||
Gst.init_python()
|
||||
|
||||
#
|
||||
# Simple Sink element created entirely in python
|
||||
|
|
|
@ -755,7 +755,14 @@ def deinit():
|
|||
deinit_pygst()
|
||||
return real_deinit()
|
||||
|
||||
def init_python():
|
||||
if not Gst.is_initialized():
|
||||
raise NotInitialized("Gst.init_python should never be called before GStreamer itself is initialized")
|
||||
|
||||
init_pygst()
|
||||
|
||||
Gst.deinit = deinit
|
||||
Gst.init_python = init_python
|
||||
|
||||
if not Gst.is_initialized():
|
||||
deinit_pygst()
|
||||
|
|
Loading…
Reference in a new issue