gaeguli
gaeguli copied to clipboard
[gæguli] is SRT streamer designed for edge devices that require strong security and ultra-low latency.
Gaeguli
[gæguli] is a library for video streaming using SRT that provides strong security and ultra-low latency.
Overview
Gaeguli implements the supporting library for handling SRT streaming. It provides 'pipeline' component that deals with receiving frames from a video source and streaming to a specific URI using SRT protocol.
Build from sources
To build the from sources follow the procedure described in
Gaeguli requires GStreamer 1.16 or newer.
Usage examples
Gaeguli includes an executable binary pipeline-2.0 which serves as a demonstration of basic streaming
scenarios. For full capabilities of libgaeguli please refer to the API documentation and for coding example
see tools/pipeline.c.
Stream in SRT caller mode on port 8888
Sender:
pipeline-2.0 -d /dev/video0 srt://127.0.0.1:8888
Receiver:
gst-launch-1.0 srtsrc uri=srt://:8888 ! queue ! decodebin ! autovideosink
Note that a queue is required right after srtsrc. Otherwise, you will see that the time on the receiving side gradually slows down.
Stream in SRT listener mode on port 8888
Sender:
pipeline-2.0 -d /dev/video0 srt://:8888
Receiver (several independent connections at a time are possible):
gst-launch-1.0 srtsrc uri=srt://127.0.0.1:8888 ! queue ! decodebin ! autovideosink
PPA nightly builds
Experimental versions of Gaeguli are daily generated in launchpad.
$ sudo add-apt-repository ppa:hwangsaeul/nightly
$ sudo apt-get update
$ sudo apt-get install libgaeguli2 libgaeguli-dev gaeguli-tools