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;
}