2022-05-20 Fred Gleason <fredg@paravelsystems.com>

* Updated the 'Rivendell Macro Language' chapter of the Operations
	Guide.

Signed-off-by: Fred Gleason <fredg@paravelsystems.com>
This commit is contained in:
Fred Gleason 2022-05-20 14:05:27 -04:00
parent d5f17fe258
commit ea9f0d7674
2 changed files with 118 additions and 32 deletions

View File

@ -23116,3 +23116,6 @@
2022-05-20 Fred Gleason <fredg@paravelsystems.com>
* Fixed up remaining image dimension parameters in the 'Configuring
Rivendell with RDAdmin' chapter of the Operations Guide.
2022-05-20 Fred Gleason <fredg@paravelsystems.com>
* Updated the 'Rivendell Macro Language' chapter of the Operations
Guide.

View File

@ -1,4 +1,4 @@
<chapter xmlns="http://docbook.org/ns/docbook" xml:id="chapter.rml">
<chapter xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="chapter.rml">
<title>Rivendell Macro Langauge</title>
<sect1 xml:id="sect.rml.overview">
<title>Overview</title>
@ -62,7 +62,7 @@
delivered to UDP ports 5858 or 5859 on said system, using the SOCK_DGRAM
connectionless protocol. Commands delivered to port 5858 may receive a
reply back to the originating IP address at UDP socket 5860 to indicated
command success/failure, while commanders delivered to 5859 will be
command success/failure, while commands delivered to 5859 will be
processed, but no reply made.
</para>
</sect1>
@ -169,6 +169,40 @@
</para>
</sect1>
<sect1 xml:id="sect.rml.jack_port_names">
<title>JACK Port Names</title>
<para>
Some commands (e.g. the Connect Jack Ports [JC] RML) require JACK port
name arguments. Such port names have the following form:
</para>
<para>
<replaceable>jack-client-name</replaceable>:<replaceable>jack-endpoint-name</replaceable>
</para>
<para>
For example, to connect the first Rivendell audio output to the first
available system playback ports, the following RML could be used:
</para>
<literallayout>
<userinput>JC system:playback_1 rivendell_0:playout_0L!</userinput>
<userinput>JC system:playback_2 rivendell_0:playout_0R!</userinput>
</literallayout>
<para>
In this example, <userinput>system</userinput> and
<userinput>rivendell_0</userinput> are
<replaceable>jack-client-name</replaceable>s, while
<userinput>playback_1</userinput>, <userinput>playback_2</userinput>,
<userinput>playout_0L</userinput> and <userinput>playout_0R</userinput>
are <replaceable>jack-endpoint-name</replaceable>s.
</para>
<note>
Note that <emphasis>two</emphasis> RML commands are required
for this specific example. This is because JACK has no notion of
stereo pairs, hence the &quot;left&quot; and &quot;right&quot; Rivendell
playout ports have to be independently connected to the specific system
playback ports.
</note>
</sect1>
<sect1 xml:id="sect.rml.log_machines">
<title>Log Machines</title>
<para>
@ -181,14 +215,56 @@
</para>
<para>
The <replaceable>log machine</replaceable> argument in the context
of Rivendell macros must be an integer ranging from Zero (0) to
Three (3). <replaceable>0</replaceable> represents
<emphasis>all</emphasis> log machines,
<replaceable>1</replaceable> represents the <computeroutput>Main
Log</computeroutput>, <replaceable>2</replaceable> represents
<computeroutput>Aux Log 1</computeroutput>, and
<replaceable>3</replaceable> represents <computeroutput>Aux Log
2</computeroutput>.
of Rivendell macros must be an integer falling within one of the
following values:
<variablelist>
<varlistentry>
<term><userinput>0</userinput></term>
<listitem>
<para>
<emphasis>All</emphasis> non-virtual log machines --i.e. the
<computeroutput>Main Log</computeroutput>,
<computeroutput>Aux 1 Log</computeroutput> and
<computeroutput>Aux 2 Log</computeroutput> log machines.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><userinput>1</userinput></term>
<listitem>
<para>
<computeroutput>Main Log</computeroutput>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><userinput>2</userinput></term>
<listitem>
<para>
<computeroutput>Aux 1 Log</computeroutput>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><userinput>3</userinput></term>
<listitem>
<para>
<computeroutput>Aux 2 Log</computeroutput>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<userinput>101</userinput> through <userinput>120</userinput>
</term>
<listitem>
<para>
<computeroutput>Virtual Log 101</computeroutput> through
<computeroutput>Virtual Log 120</computeroutput>
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
<para>
For example, the macro <userinput>PL 1 0!</userinput> starts
@ -284,7 +360,7 @@
<para>
Output a string of binary codes represented by
<replaceable>hexcode</replaceable> <replaceable>..</replaceable> on
serial port <replaceable>portnum</replaceable>!
serial port <replaceable>portnum</replaceable>.
</para>
</sect2>
@ -350,16 +426,15 @@
</para>
<para>
<userinput>CC
<replaceable>dest</replaceable>
[<userinput>:</userinput><replaceable>udpport</replaceable>]
<replaceable>dest</replaceable>[<userinput>:</userinput><replaceable>udpport</replaceable>]
<replaceable>rml</replaceable>!</userinput>
</para>
<para>
Send the RML command <replaceable>rml</replaceable> to
<replaceable>dest</replaceable>.<replaceable>dest</replaceable> may be
either a Rivendell host name or an IP address. A UDP port value may be
optionally specified as <replaceable>udpport</replaceable> (default
value 5859).
Execute the RML command <replaceable>rml</replaceable> on host
<replaceable>dest</replaceable>, where <replaceable>dest</replaceable>
may be either a Rivendell host name or an IP address. A UDP port value
may be optionally specified as <replaceable>udpport</replaceable>
(default value 5859).
</para>
</sect2>
@ -387,7 +462,8 @@
</para>
<para>
Attempt to connect JACK input port <replaceable>input</replaceable>
to <replaceable>output</replaceable>.
to <replaceable>output</replaceable>. See
<xref linkend="sect.rml.jack_port_names" /> for an example.
</para>
</sect2>
@ -529,7 +605,7 @@
</variablelist>
</para>
<para>
Disconnect all JACK input port connections.
Disconnect all JACK audio port connections.
</para>
<para>
<userinput>JZ!</userinput>
@ -567,7 +643,7 @@
</para>
<para>
Set the duck level of button at <replaceable>column</replaceable>,
<replaceable>row</replaceable>> of panel
<replaceable>row</replaceable> of panel
<replaceable>panel</replaceable>.
Panel: <userinput>S1</userinput>...<userinput>S50</userinput> or
<userinput>U1</userinput>...<userinput>U50</userinput>;
@ -612,7 +688,7 @@
Breakaway mode. If a breakaway is currently executing, it will
immediately be aborted and a new one started. Passing a '0' for
<replaceable>len</replaceable> will cause any currently executing
breakaway immediately to be aborted and input audio restored.
breakaway to be aborted immediately and input audio restored.
</para>
</sect2>
@ -1048,7 +1124,7 @@
<replaceable>startline</replaceable> is -2, the log will be started at
the first event if that event does not have a 'stop' transition.
Default <replaceable>startline</replaceable>=-1. If no
<replaceable>log</replaceable>> is specified, the machine's current log
<replaceable>log</replaceable> is specified, the machine's current log
is unloaded.
</para>
</sect2>
@ -1225,7 +1301,7 @@
</para>
<para>
Set the next event for log machine <replaceable>mach</replaceable> to
line <replaceable>line</replaceable>>.
line <replaceable>line</replaceable>.
</para>
</sect2>
@ -1541,7 +1617,7 @@
Output <replaceable>data</replaceable> on serial port
<replaceable>portnum</replaceable>. <replaceable>data</replaceable> can
consist of arbitrary binary data as well as textual characters (see
<command>Binary Data</command> above).
<xref linkend="sect.rml.binary_data" /> above).
</para>
</sect2>
@ -1596,8 +1672,9 @@
<replaceable>string</replaceable>!</userinput>
</para>
<para>
Display <replaceable>string</replaceable>> in color
<replaceable>color</replaceable> in the message widget.
Display <replaceable>string</replaceable> in color
<replaceable>color</replaceable> in the message widget. For the list
of available colors, see <xref linkend="sect.rml.specifying_color" />.
</para>
</sect2>
@ -1797,7 +1874,7 @@
<replaceable>string</replaceable>!</userinput>
</para>
<para>
Display <replaceable>string</replaceable>> in the message widget.
Display <replaceable>string</replaceable> in the message widget.
</para>
</sect2>
@ -1844,6 +1921,10 @@
</varlistentry>
</variablelist>
</para>
<para>
See <xref linkend="sect.rml.log_machines" /> for the possible values
of <replaceable>mach</replaceable>.
</para>
</sect2>
<sect2 xml:id="sect.rml.sleep__sp_">
@ -1915,7 +1996,8 @@
</variablelist>
</para>
<para>
Push an RDAirPlay Start button (1-7, numbered from the top).
Push an RDAirPlay Start button (numbered starting from 1 at the top
and counting downwards).
</para>
<para>
<userinput>PB
@ -1950,9 +2032,9 @@
[<replaceable>skip</replaceable>]!</userinput>
</para>
<para>
Start log machine <replaceable>mach</replaceable>> if stopped, or start
Start log machine <replaceable>mach</replaceable> if stopped, or start
next event if already running. If specified, start the playout on
machine port <replaceable>mport</replaceable>>. If
machine port <replaceable>mport</replaceable>. If
<replaceable>skip</replaceable> is supplied, equal to '1' and the log
machine is in Manual or Live Assist mode, then any intervening
meta-events in log between the current 'next' event and the next cart
@ -2393,7 +2475,8 @@
Send <replaceable>data</replaceable> in a UDP packet to port
<replaceable>udpport</replaceable> at <replaceable>ipaddr</replaceable>.
<replaceable>data</replaceable> can consist of arbitrary binary data as
well as textual characters (see <command>Binary Data</command> above).
well as textual characters (see <xref linkend="sect.rml.binary_data" />
for details).
</para>
</sect2>
</sect1>