summaryrefslogtreecommitdiff
path: root/doc/sydra.8.txt
diff options
context:
space:
mode:
authorChristian Pointner <equinox@spreadspace.org>2014-10-02 23:25:28 +0200
committerChristian Pointner <equinox@spreadspace.org>2014-10-02 23:25:28 +0200
commitd048447e6bee06400acd3854f999e4c264172ac0 (patch)
tree7c6d04cebd98ceb40bea09a77da248ad808128af /doc/sydra.8.txt
parentimproved explanation of sydra (diff)
renamed the sydra utility to sydra-rtp
Diffstat (limited to 'doc/sydra.8.txt')
-rw-r--r--doc/sydra.8.txt272
1 files changed, 0 insertions, 272 deletions
diff --git a/doc/sydra.8.txt b/doc/sydra.8.txt
deleted file mode 100644
index 3dc037c..0000000
--- a/doc/sydra.8.txt
+++ /dev/null
@@ -1,272 +0,0 @@
-sydra(8)
-========
-
-NAME
-----
-
-sydra - toolbox for RTP based streams
-
-
-SYNOPSIS
---------
-
-....
-sydra
- [ -h|--help ]
- [ -D|--nodaemonize ]
- [ -u|--username <username> ]
- [ -g|--groupname <groupname> ]
- [ -C|--chroot <path> ]
- [ -P|--write-pid <filename> ]
- [ -L|--log <target>:<level>[,<param1>[,<param2>[..]]] ]
- [ -U|--debug ]
- [ -n|--appname <name> ]
- [ -m|--mode (sender|reciever) ]
- [ --source <bin description> ]
- [ --video-encoder <bin description> ]
- [ --video-payloader <element> ]
- [ --previewsink <bin description> ]
- [ --audio-encoder <bin description> ]
- [ --audio-payloader <element> ]
- [ --video-caps <caps> ]
- [ --video-depayloader <element> ]
- [ --video-decoder <bin description> ]
- [ --audio-caps <caps> ]
- [ --audio-depayloader <element> ]
- [ --audio-decoder <bin description> ]
- [ --sink <bin description> ]
- [ -a|--rtp-host <host> ]
- [ -o|--rtp-port-base <port> ]
- [ -A|--rtp-addr-local <address> ]
- [ -O|--rtp-port-base-local <port> ]
- [ -c|--no-auto-client ]
- [ -t|--timeout <timeout> ]
- [ -k|--keepalive-interval <interval> ]
- [ --rec-video-encoder <bin description> ]
- [ --rec-audio-encoder <bin description> ]
- [ --rec-mux <element> ]
- [ --rec-name-format <formatstring> ]
-....
-
-
-DESCRIPTION
------------
-
-*sydra* is a toolbox which allows you to set up multiple bidirectional
-Video/Audio streams from external locations.
-*sydra* has been written to be used for the Elevate Festival in Graz
-Austria in order to involve external locations to present themselves
-at the festival.
-This manpage describes *sydra* the basic utility for the task which is
-based on GStreamer and is written in C.
-The *sydra* utility creates a gstreamer pipeline to send or receive
-RTP-based Audio/Video streams. For a bidirectional connection 2 instances
-of *sydra* are required on both sides of the communication. *sydra* has
-automatic client detection capabilities in the form of keep alive messages.
-These message are sent out by receivers to request RTP packets from a sender.
-The sender will send RTP packets to one or more receivers which request
-the stream. It also uses the keep alive messages to remove stale client
-'connections'. A receiver can also request to be removed from the list of
-receivers. This ensures a fast and clean shutdown.
-The keepalive messages are also a simple way to work around NAT and
-firewalls (UDP hole punching).
-
-OPTIONS
--------
-
-The following options can be passed to the *sydra* daemon:
-
-*global options*
-
-*-D, --nodaemonize*::
- This option instructs *sydra* to run in foreground
- instead of becoming a daemon which is the default.
-
-*-u, --username <username>*::
- run as this user. If no group is specified (*-g*) the default group of
- the user is used. The default is to not drop privileges.
-
-*-g, --groupname <groupname>*::
- run as this group. If no username is specified (*-u*) this gets ignored.
- The default is to not drop privileges.
-
-*-C, --chroot <path>*::
- Instruct *sydra* to run in a chroot jail. The default is
- to not run in chroot.
-
-*-P, --write-pid <filename>*::
- Instruct *sydra* to write it's pid to this file. The default is
- to not create a pid file.
-
-*-L, --log <target>:<level>[,<param1>[,<param2>[..]]]*::
- add log target to logging system. This can be invoked several times
- in order to log to different targets at the same time. Every target
- has its own log level which is a number between 0 and 5. Where 0 means
- disabling log and 5 means debug messages are enabled. +
- The file target can be used more than once with different levels.
- If no target is provided at the command line a single target with the
- config *syslog:3,sydra,daemon* is added. +
- The following targets are supported:
-
- *syslog*;; log to syslog daemon, parameters <level>[,<logname>[,<facility>]]
- *file*;; log to file, parameters <level>[,<path>]
- *stdout*;; log to standard output, parameters <level>
- *stderr*;; log to standard error, parameters <level>
-
-*-U, --debug*::
- This option instructs *sydra* to run in debug mode. It implicits *-D*
- (don't daemonize) and adds a log target with the configuration
- *stdout:5* (logging with maximum level). In future releases there might
- be additional output when this option is supplied.
-
-*-n, --appname <name>*::
- This set the application name using 'g_set_prgname()'. It will be used for example
- by xvimagesink for window title.
-
-*-m, --mode (sender|reciever)*::
- This sets the main mode of *sydra*. The sender will read raw video and audio
- from the source bin and send it via RTP to one or more receivers.
-
-
-*sender-mode only options*
-
-*--source <bin description>*::
- A gst-launch-style description for the raw video and audio bin. This bin must contain
- an element called 'videosrc' and an element called 'audiosrc' which should each
- contain a pad called 'src'. Theses pads will get connected to the encoder bins.
- Example:
- 'v4l2src ! videoconvert ! videoscale ! video/x-raw,format=I420,width=864,height=480 ! identity name="videosrc"
- autoaudiosrc ! audio/x-raw,format=S16LE,channels=1,rate=48000 ! identity name="audiosrc"'
-
-*--video-encoder <bin description>*::
- Bin description for the video encoder. Example: 'videoconvert ! vp8enc'
-
-*--video-payloader <element>*::
- A RTP payloader element for the video codec in use. Example: 'rtpvp8pay'
-
-*--previewsink <bin description>*::
- A video sink element for local preview. Example: 'videoconvert ! textoverlay test="preview" ! xvimagesink'
-
-*--audio-encoder <bin description>*::
- Bin description for the audio encoder. Example: 'audioconveert ! opusenc'
-
-*--audio-payloader <element>*::
- A RTP payloader element for the audio codec in use. Example: 'rtpopuspay'
-
-
-*receiver-mode only options*
-
-*--video-caps <caps>*::
- These caps will get assigned to incoming RTP packets for video. Example:
- 'application/x-rtp,media=video,clock-rate=90000,encoding-name=VP8-DRAFT-IETF-01,caps="video/x-vp8"'
-
-*--video-depayloader <element>*::
- A RTP depayloader element for the video codec in use. Example: 'rtpvp8depay'
-
-*--video-decoder <bin description>*::
- Bin description for the video decoder. Example: 'vp8dec'
-
-*--audio-caps <caps>*::
- These caps will get assigned to incoming RTP packets for audio. Example:
- 'application/x-rtp,media=audio,clock-rate=48000,payload=96,encoding-name=X-GST-OPUS-DRAFT-SPITTKA-00,caps="audio/x-opus"'
-
-*--audio-depayloader <element>*::
- A RTP depayloader element for the audio codec in use. Example: 'rtpopusdepay'
-
-*--audio-decoder <bin description>*::
- Bin description for the audio decoder. Example: 'opusdec'
-
-*--sink <bin description>*::
- A gst-launch-style description for the raw video and audio bin. This bin must contain
- an element called 'videosink' and an element called 'audiosink' which should each
- contain a pad called 'sink'. Theses pads will get connected to the decoder bins.
- Example:
- 'videoconvert name="videosink" ! videoscale add-borders=true ! xvimagesink
- audioconvert name="audiosink" ! autoaudiosink'
-
-*options for RTP*
-
-*-a, --rtp-host <host>*::
- In 'sender' mode this sets the address or hostname of the remote RTP receiver. Please
- mind that the remote RTP host is always added as a receiver and it shouldn't be
- configured to send keepalives. This would re-add the receiver to the list of clients
- and as a result duplicate packages will be sent.
- Also the remote RTP host is excluded from client timeout handling and remove requests
- from it will get ignored.
- When you omit this in sender mode the automatic client detection will be used to add
- receivers.
- In 'receiver' mode keepalive messages will be sent to this host. Leave empty to disable
- keepalive messages.
-
-*-o, --rtp-port-base <port>*::
- The base number for remote ports. *sydra* will send the RTP/RTCP packets using the following
- mapping:
- * rtp-port-base + 0: RTP Video
- * rtp-port-base + 1: RTCP Video
- * rtp-port-base + 2: RTP Audio
- * rtp-port-base + 3: RTCP Audio
-
-*-A, --rtp-addr-local <address>*::
- The local address to wait for incoming UDP messages. Leave empty to listen on any address.
-
-*-O, --rtp-port-base-local <port>*::
- The base number for local ports to bind to. The same mapping as for the remote port-base is
- used to map incoming RTP packets to the RTP bin.
-
-*-c, --no-auto-client*::
- This disables auto-detection for clients in 'sender' mode. Mind that if you disable the
- automatic client detection and also omit the rtp-host option *sydra* won't send any RTP
- messages. If configured recording will work but this is most probably not what you want.
-
-*-t, --timeout <timeout>*::
- This sets the client timeout in seconds in 'sender' mode. A value of 0 disables client
- timeouts. This is not recommended.
-
-*-k, --keepalive-interval <interval>*::
- This sets the interval in seconds for sending out keepalive messages in 'receiver' mode.
- A value of 0 disables keepalive messages and therefor the client auto detection won't
- work for this client.
-
-*options for recording*
-
-*--rec-video-encoder <bin description>*::
- A bin description for the video encoder used for recording. If you leave this empty the
- output from the RTP video encoder is used. Example: 'videoconvert ! jpegenc'
-
-*--rec-audio-encoder <bin description>*::
- A bin description for the audio encoder used for recording. If you leave this empty the
- output from the RTP audio encoder is used. Example: 'audioconvert ! vorbisenc'
-
-*--rec-mux <element>*::
- A gstreamer muxer element used for recording. If you leave this empty recording will be
- disabled. Example: 'matroskamux'
-
-*--rec-name-format <formatstring>*::
- A 'strftime' based format string which will be used to create the name for the
- recorded file. Example: ./recordings/%Y-%m-%d_%H-%M-%S.mkv
-
-
-BUGS
-----
-Most likely there are some bugs in *sydra*. If you find a bug, please let
-the developers know at equinox@spreadspace.org. Of course, patches are preferred.
-
-
-SEE ALSO
---------
-
-*strftime*(3), *gst-launch*(1)
-
-AUTHORS
--------
-
-Christian Pointner <equinox@spreadspace.org>
-
-
-COPYING
--------
-
-Copyright \(C) 2014 Christian Pointner. This program is free
-software: you can redistribute it and/or modify it under the terms
-of the GNU General Public License as published by the Free Software
-Foundation, either version 3 of the License, or any later version.