Skip to content

Pushing SRT stream

Flussonic supports pushing SRT streams.

Flussonic acts as an SRT Caller when you push from Flussonic to some third-party server.

Let us have a look at the configuration options.

Push from Flussonic

To enable pushing SRT streams from Flussonic you should set the URL and the streamid (find the detailed description here) according to one of the following formats:

  • SRT parameters in the URL parameters:

srt://SRT-HOST:SRT_PORT streamid="#!::r=STREAM_NAME,m=publish"

  • SRT parameters in the URL query string:

srt://SRT-HOST:SRT_PORT?streamid=#!::r=STREAM_NAME,m=publish

where:

  • SRT-HOST is an IP address of the destination server.

  • SRT_PORT is an SRT port.

  • STREAM_NAME is a name of a publishing location to push the SRT stream to.

Let's have a look at the example:


stream push_srt {
  input fake://fake;
  push srt://example.com:9998 streamid="#!::r=my-stream-id,m=publish";
}

In the example above we enabled stream transmission (push) to the example.com server over port 9998.

You can also manage SRT push by passing certain parameters.

Parameters for SRT push

Here is a list of the parameters to manage the SRT push:

Parameters Unit Description Example
minversion x.y.z The minimum SRT version required from the peer. minversion=1.1.0
version x.y.z Required SRT version. version=1.3.0
enforcedencryption boolean If set to true, both connection parties must have the same password set (including empty, in other words, with no encryption). If the password does not match or only one side is unencrypted, the connection is rejected. Set to true by default. enforcedencryption=false
passphrase string Password for the encrypted transmission. Its length should be not less than 10 and not more than 79 characters. Default value is an empty string (""). passphrase=9876543210
timeout seconds If set to -1 then data transmission time is unlimited. Default behavior. timeout=1
linger seconds The time socket waits for the unsent data when closing. Set to 180 by default. linger=1
connect_timeout seconds Connection timeout. Equals to 0 by default. connect_timeout=2
latency milliseconds Packet delivery delay. Used to absorb bursts of missed packet retransmissions. The default value is 120. latency=100

Example:


stream srt_push {
  input fake://fake;
  push srt://example.com:9998?streamid=#!::r=some_random_name&passphrase=1234567890;
}