Examples of usage of GStreamer hlssink3 plugin.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Rafael Caricio b59115d1c5
Update example
1 year ago
.gitignore Basic example 1 year ago
LICENSE Initial commit 1 year ago
Makefile Basic example 1 year ago
README.md Basic example 1 year ago
hlssink3_server.py Update example 1 year ago
requirements.txt Basic example 1 year ago


GStreamer HTTP Live Streaming Examples

This repository contains some examples of usage of the GStreamer HLS plugin hlssink3.

Available Examples

Serving a video file to live HLS

The example hlssink3_server.py reads from a local file and generates a HLS manifest and segment files. The files are updated in realtime for live streaming.


Needs Python 3.9 (as of today 2021-10-10).

Make sure GStreamer is installed and available:

$ pkg-config --print-errors --exists gstreamer-1.0

If GStreamer dependency is not installed, please try the those installation steps.

MacOS Specific

Make sure pkg-config version being used can find all libs installed using brew:

$ export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig"

Building Python Bindings

In order to be able to use the GStreamer bindings in a virtualenv. We need to build from source. Checkout the code from https://gitlab.freedesktop.org/gstreamer/gst-python/-/tree/master

$ meson builddir
$ cd builddir
$ ninja -v
$ ninja install -v

The ninja install will attempt to install, but we need to manually copy the overrides, if we want to use under a virtualenv.

$ cp gi/overrides/_gi_gst.cpython-39-darwin.so ~/.pyenv/versions/gstreamer/lib/python3.9/site-packages/gi/overrides
$ cp ~/development/opensource/gst-python/gi/overrides/GstPbutils.py ~/.pyenv/versions/gstreamer/lib/python3.9/site-packages/gi/overrides
$ cp ~/development/opensource/gst-python/gi/overrides/Gst.py ~/.pyenv/versions/gstreamer/lib/python3.9/site-packages/gi/overrides

Additional Info

Example of sometimes pad: https://github.com/gkralik/python-gst-tutorial/blob/master/basic-tutorial-3.py