mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-23 08:46:40 +00:00
51 lines
1.3 KiB
Markdown
51 lines
1.3 KiB
Markdown
|
# gst-python
|
||
|
|
||
|
gst-python is an extension of the regular GStreamer Python bindings
|
||
|
based on gobject-introspection information and PyGObject.
|
||
|
|
||
|
It provides two things:
|
||
|
|
||
|
1. "syntactic sugar" in form of overrides for various GStreamer APIs
|
||
|
that makes them easier to use in Python and more pythonic; and
|
||
|
|
||
|
2. support for APIs that aren't available through the regular
|
||
|
gobject-introspection based bindings, such as e.g. GStreamer's
|
||
|
fundamental GLib types such as `Gst.Fraction`, `Gst.IntRange` etc.
|
||
|
|
||
|
## Prerequisites
|
||
|
|
||
|
These libraries are needed to build gst-python:
|
||
|
- gstreamer core
|
||
|
- gst-plugins-base
|
||
|
- pygobject
|
||
|
|
||
|
You will also need pygobject and glib installed. On debian-based distros
|
||
|
you can install these with:
|
||
|
|
||
|
sudo apt build-dep python3-gst-1.0
|
||
|
|
||
|
Only Python 3 is supported.
|
||
|
|
||
|
## Building
|
||
|
|
||
|
meson setup builddir && ninja -C builddir
|
||
|
meson install -C builddir
|
||
|
|
||
|
## Using
|
||
|
|
||
|
Once installed in the right place, you don't need to do anything in order
|
||
|
to use the overrides. They will be loaded automatically on
|
||
|
|
||
|
```python
|
||
|
import gi
|
||
|
gi.require_version('Gst', '1.0')
|
||
|
gi.repository import GObject, Gst
|
||
|
```
|
||
|
|
||
|
Note that additional imports will be required for other GStreamer libraries to
|
||
|
make use of their respective APIs, e.g. `GstApp` or `GstVideo`.
|
||
|
|
||
|
## License
|
||
|
|
||
|
gst-python is licensed under the [LGPL 2.1](https://www.gnu.org/licenses/lgpl-2.1.html)
|