|
|
|
|
|
|
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
|
|
|
<html>
|
|
|
|
<head>
|
|
|
|
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
|
|
|
|
<title></title>
|
|
|
|
<meta name="generator" content="LibreOffice 6.0.7.3 (Linux)"/>
|
|
|
|
<meta name="created" content="2020-03-16T08:26:43.204626544"/>
|
|
|
|
<meta name="changed" content="2020-03-16T20:55:00.803337052"/>
|
|
|
|
<style type="text/css">
|
|
|
|
@page { margin: 0.79in }
|
|
|
|
p { margin-bottom: 0.1in; line-height: 115% }
|
|
|
|
h1 { margin-bottom: 0.08in }
|
|
|
|
h1.western { font-family: "Liberation Sans", sans-serif; font-size: 18pt }
|
|
|
|
h1.cjk { font-family: "Source Han Sans CN"; font-size: 18pt }
|
|
|
|
h1.ctl { font-family: "Noto Sans"; font-size: 18pt }
|
|
|
|
h2.western { font-family: "Liberation Sans", sans-serif; font-size: 16pt }
|
|
|
|
h2.cjk { font-family: "Source Han Sans CN"; font-size: 16pt }
|
|
|
|
h2.ctl { font-family: "Noto Sans"; font-size: 16pt }
|
|
|
|
</style>
|
|
|
|
</head>
|
|
|
|
<body lang="en-US" dir="ltr">
|
|
|
|
<h1 class="western">Introductory Suggestions For Your First Testing
|
|
|
|
Regimen</h1>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">No doubt you will be
|
|
|
|
substituting your own binaries that call librist. It is unlikely that
|
|
|
|
you will use exactly the same command line parameters as the sample
|
|
|
|
binaries, but this document make use of them to illustrate several
|
|
|
|
scenarios. Because this is an introductory document, it will focus on
|
|
|
|
the main profile. There will be a followup document.</p>
|
|
|
|
<h2 class="western">First Test: <font face="Liberation Sans, sans-serif"><font size="5" style="font-size: 16pt"><b>Sender
|
|
|
|
Listens</b></font></font></h2>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">Assumptions:</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<ul>
|
|
|
|
<li/>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">The original
|
|
|
|
stream source (192.168.1.11 emits a unicast udp stream to the rist
|
|
|
|
sender at port 19994. You can start the stream before establishing
|
|
|
|
the rist connection between rist sender and receiver, or after. If
|
|
|
|
debugging, and trying to establish that rist sender and receiver are
|
|
|
|
establishing a connection properly, hold the stream off until after
|
|
|
|
the connection has been established. By doing so, you can read the
|
|
|
|
messages to standard output easier.</p>
|
|
|
|
<li/>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">The rist
|
|
|
|
sender (192.168.1.12) “listens” (the @ sign means it will
|
|
|
|
listen) at port 1994 for that stream.</p>
|
|
|
|
<li/>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">The rist
|
|
|
|
sender (192.168.1.12) also “listens” at port 8193 (the @ sign,
|
|
|
|
again) for the 1st rist receiver to initiate the connection. Later
|
|
|
|
we will show an example where the receiver “listens” for the
|
|
|
|
connection initiation.</p>
|
|
|
|
<li/>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">The 1<sup>st</sup>
|
|
|
|
rist receiver contacts the sender on port 8193 and initiates the
|
|
|
|
connection. Some parameters are set only on the sender; the receiver
|
|
|
|
obtains any such parameters upon the establishment of the
|
|
|
|
connection.</p>
|
|
|
|
<li/>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">Once
|
|
|
|
initiated, the rist sender (192.168.1.12) sends it to the 1<sup>st</sup>
|
|
|
|
rist receiver on port 8193 using the main profile (-p 1).</p>
|
|
|
|
<li/>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">Upon
|
|
|
|
receiving the stream, the 1<sup>st</sup> rist receiver emits the
|
|
|
|
de-risted stream to another host (192.168.1.14), which will be able
|
|
|
|
to view it using a client such as vlc. In the example below, a vlc
|
|
|
|
client running at the host with the address 192.168.1.14 would
|
|
|
|
therefore be able to view the stream by opening a network stream at
|
|
|
|
udp://@:11111</p>
|
|
|
|
</ul>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">Sender: <font face="Liberation Mono, monospace">mpeg2rist
|
|
|
|
-p 1 -u @192.168.1.12:19994 -s @192.168.1.12:8193</font></p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">Receiver:<font face="Liberation Mono, monospace"><font size="3" style="font-size: 12pt">
|
|
|
|
</font></font><span style="text-decoration: none"><font face="Liberation Mono, monospace"><font size="3" style="font-size: 12pt"><span style="font-style: normal"><span style="font-weight: normal">rist2mpeg
|
|
|
|
-p 1 -s rist://192.168.1.12:8193 -u 192.168.1.14:11111</span></span></font></font></span></p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">Notes:</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<ul>
|
|
|
|
<li/>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">“Sender
|
|
|
|
Listens” may be a commonly used scenario when the sender has a
|
|
|
|
public address and the receiver is behind a firewall.</p>
|
|
|
|
</ul>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<h2 class="western">Second Test: Add Encryption Passphrase AES128</h2>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">Assumptions:</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<ul>
|
|
|
|
<li/>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">Same
|
|
|
|
assumptions as above; the only change is that we add the encryption
|
|
|
|
using the passphrase MyDogHasFleas</p>
|
|
|
|
</ul>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">Sender: <font face="Liberation Mono, monospace">mpeg2rist
|
|
|
|
-p 1 -e MyDogHasFleas-u @192.168.1.12:19994 -s @192.168.1.12:8193</font></p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">Receiver:<font face="Liberation Mono, monospace"><font size="3" style="font-size: 12pt">
|
|
|
|
</font></font><span style="text-decoration: none"><font face="Liberation Mono, monospace"><font size="3" style="font-size: 12pt"><span style="font-style: normal"><span style="font-weight: normal">rist2mpeg
|
|
|
|
-p 1 -e MyDogHasFleas -s rist://192.168.1.12:8193 -u
|
|
|
|
192.168.1.14:11111</span></span></font></font></span></p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">Notes:</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<ul>
|
|
|
|
<li/>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">In most
|
|
|
|
cases, AES128 should be sufficient. AES256 is available, but some
|
|
|
|
may find that the additional security is not a good “value” as
|
|
|
|
measured by “bang for the buck. Adding the parameter “-t 2”
|
|
|
|
will use the AES256. But please feel free to err on the side of
|
|
|
|
caution.</p>
|
|
|
|
<li/>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">Omitting the
|
|
|
|
-e parameter, as was done in the previous example, sends the stream
|
|
|
|
unencrypted.</p>
|
|
|
|
</ul>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<h2 class="western"><font face="Liberation Sans, sans-serif"><font size="5" style="font-size: 16pt"><b>Third</b></font></font>
|
|
|
|
Test: <font face="Liberation Sans, sans-serif"><font size="5" style="font-size: 16pt"><b>Receiver
|
|
|
|
Listens</b></font></font></h2>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">Note that (on the
|
|
|
|
rist side, not the ingress media side of the command line) we have
|
|
|
|
merely moved the “@” sign and changed the IP address from the
|
|
|
|
sender host to the receiver host’s IP address. In all cases when
|
|
|
|
you use the “@” sign, you will be using it with an IP address on
|
|
|
|
the host at which you are running the binary. The receiver will
|
|
|
|
listen, and the sender will initiate in the example below.</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">Sender: <font face="Liberation Mono, monospace">mpeg2rist
|
|
|
|
-p 1 -e MyDogHasFleas-u @192.168.1.12:19994 -s 192.168.1.13:8193</font></p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">Receiver:<font face="Liberation Mono, monospace"><font size="3" style="font-size: 12pt">
|
|
|
|
</font></font><span style="text-decoration: none"><font face="Liberation Mono, monospace"><font size="3" style="font-size: 12pt"><span style="font-style: normal"><span style="font-weight: normal">rist2mpeg
|
|
|
|
-p 1 -e MyDogHasFleas -s rist://@192.168.1.13:8193 -u
|
|
|
|
192.168.1.14:11111</span></span></font></font></span></p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<h2 class="western"><font face="Liberation Sans, sans-serif"><font size="5" style="font-size: 16pt"><b>Fourth</b></font></font>
|
|
|
|
Test: <font face="Liberation Sans, sans-serif"><font size="5" style="font-size: 16pt"><b>Multicast
|
|
|
|
Stream Ingress Side</b></font></font></h2>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">Multicast being a
|
|
|
|
common and highly useful protocol in professional streaming, it is
|
|
|
|
important to incorporate at an early point in testing. We recommend
|
|
|
|
<i>not</i> testing multicast in your very first test, because unicast
|
|
|
|
is usually easier to debug. At this point, however, you’ve sent a
|
|
|
|
few streams via librist.</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">Assumptions</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<ul>
|
|
|
|
<li/>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">The stream
|
|
|
|
source emits to udp://237.1.2.3:19994</p>
|
|
|
|
<li/>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">The 1<sup>st</sup>
|
|
|
|
sender is connected by network interface eth1 to the same switch
|
|
|
|
which the stream source host is connected to.</p>
|
|
|
|
<li/>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">The example
|
|
|
|
returns to sender listens.</p>
|
|
|
|
<li/>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">The receiver
|
|
|
|
emits unicast.</p>
|
|
|
|
</ul>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">Sender: mpeg2rist -e
|
|
|
|
<font face="Liberation Mono, monospace">MyDogHasFleas</font> -p 1 -u
|
|
|
|
237.1.2.3:19994 -f eth1 <font face="Liberation Mono, monospace">-s
|
|
|
|
@192.168.1.12:8193</font></p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><font face="Liberation Mono, monospace">Receiver:
|
|
|
|
rist2mpeg -e blarg -p 1 -s rist://192.168.1.12:8193 -u
|
|
|
|
</font><span style="text-decoration: none"><font face="Liberation Mono, monospace"><font size="3" style="font-size: 12pt"><span style="font-style: normal"><span style="font-weight: normal">192.168.1.14:11111</span></span></font></font></span></p>
|
|
|
|
<p style="margin-bottom: 0in; font-style: normal; font-weight: normal; line-height: 100%; text-decoration: none">
|
|
|
|
<br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<h2 class="western"><span style="text-decoration: none"><font face="Liberation Sans, sans-serif"><font size="5" style="font-size: 16pt"><span style="font-style: normal"><b>Fourth</b></span></font></font></span><span style="text-decoration: none"><font face="Liberation Mono, monospace"><font size="3" style="font-size: 12pt"><span style="font-style: normal"><span style="font-weight: normal">
|
|
|
|
</span></span></font></font></span><span style="text-decoration: none"><font face="Liberation Sans, sans-serif"><font size="5" style="font-size: 16pt"><span style="font-style: normal"><b>Test</b></span></font></font></span><span style="text-decoration: none"><font face="Liberation Mono, monospace"><font size="3" style="font-size: 12pt"><span style="font-style: normal"><span style="font-weight: normal">:
|
|
|
|
</span></span></font></font></span><span style="text-decoration: none"><font face="Liberation Sans, sans-serif"><font size="5" style="font-size: 16pt"><span style="font-style: normal"><b>Multicast
|
|
|
|
Stream Egress Side</b></span></font></font></span></h2>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">Same as the previous
|
|
|
|
test, except that the stream source to sender is unicast, and the
|
|
|
|
stream emitted from the receiver is multicast:</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">Sender: <font face="Liberation Mono, monospace">mpeg2rist
|
|
|
|
-p 1 -e MyDogHasFleas-u @192.168.1.12:19994 -s @192.168.1.12:8193</font></p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">Receiver:<font face="Liberation Mono, monospace"><font size="3" style="font-size: 12pt">
|
|
|
|
</font></font><span style="text-decoration: none"><font face="Liberation Mono, monospace"><font size="3" style="font-size: 12pt"><span style="font-style: normal"><span style="font-weight: normal">rist2mpeg
|
|
|
|
-p 1 -e MyDogHasFleas -s rist://192.168.1.12:8193 -u 237.1.2.11:11111
|
|
|
|
-f eth1</span></span></font></font></span></p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<h2 class="western">Fifth Test: One Sender to Two Receivers, Unicast</h2>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">We add one more
|
|
|
|
host, 192.168.1.23 as a second receiver. The second receiver
|
|
|
|
parameter is “-b.” The binaries in the project support up to four
|
|
|
|
(-s, -b, -c, -d, in that order). The sender specifies another pair of
|
|
|
|
ports for the second channel. The second receiver emits its outbound
|
|
|
|
stream to yet another host (192.168.1.15). Note that the sender
|
|
|
|
requires an additional port for each receiver.</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">Sender: <font face="Liberation Mono, monospace">mpeg2rist
|
|
|
|
-p 1 -e MyDogHasFleas-u @192.168.1.12:19994 -s @192.168.1.12:8193 -b
|
|
|
|
@192.168.1.12:8194</font></p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%">1<sup>st</sup>
|
|
|
|
Receiver:<font face="Liberation Mono, monospace"><font size="3" style="font-size: 12pt">
|
|
|
|
</font></font><span style="text-decoration: none"><font face="Liberation Mono, monospace"><font size="3" style="font-size: 12pt"><span style="font-style: normal"><span style="font-weight: normal">rist2mpeg
|
|
|
|
-p 1 -e MyDogHasFleas -s rist://192.168.1.12:8193 -u
|
|
|
|
192.168.1.14:11111</span></span></font></font></span></p>
|
|
|
|
<p style="margin-bottom: 0in; font-style: normal; font-weight: normal; line-height: 100%; text-decoration: none">
|
|
|
|
<br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<p style="margin-bottom: 0in; font-style: normal; font-weight: normal; line-height: 100%; text-decoration: none">
|
|
|
|
<font face="Liberation Mono, monospace"><font size="3" style="font-size: 12pt">2nd
|
|
|
|
Receiver: rist2mpeg -p 1 -e MyDogHasFleas -s rist://192.168.1.12:819r
|
|
|
|
-u 192.168.1.15:22222</font></font></p>
|
|
|
|
<p style="margin-bottom: 0in; font-style: normal; font-weight: normal; line-height: 100%; text-decoration: none">
|
|
|
|
<br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
<p style="margin-bottom: 0in; line-height: 100%"><br/>
|
|
|
|
|
|
|
|
</p>
|
|
|
|
</body>
|
|
|
|
</html> |
|
|
|
\ No newline at end of file |