Legacy XML-based Network Interface#
Warning
We did not evaluate any of the network interfaces in terms of security. So please be sure that you are in a safe network when using them.
The legacy network interface can be activated with:
ssr-binaural --ip-server
This of course works for all renderers, not only ssr-binaural
.
The default port is 4711; you can choose a different port with:
ssr-binaural --ip-server=4321
The relevant settings in the Configuration Files are:
NETWORK_INTERFACE = on
SERVER_PORT = 4321
Messages#
This is just a short overview about the XML messages which can be sent
to the SSR via TCP/IP. By default, messages have to be terminated with a binary
zero (\0
). This can be changed to, for example, a newline / line feed
(\n
) or to a carriage return (\r
) using one of the following ways:
Command line: Use the command line option
--end-of-message-character=VALUE
VALUE is the ASCII code for the desired character (binary zero: 0; line feed: 10; carriage return: 13).Configuration file: Here, there is the option END_OF_MESSAGE_CHARACTER. See the example
data/ssr.conf.example
. Use ASCII codes here as well.
The choice of delimiter applies to, of course, both sent and received messages.
Scene#
Load Scene:
<request><scene load="path/to/scene.asd"/></request>
Clear Scene (remove all sources):
<request><scene clear="true"/></request>
Set Master Volume (in dB):
<request><scene volume="6"/></request>
State#
Start processing:
<request><state processing="start"/></request>
Stop processing:
<request><state processing="stop"/></request>
Transport Start (Play):
<request><state transport="start"/></request>
Transport Stop (Pause):
<request><state transport="stop"/></request>
Transport Rewind:
<request><state transport="rewind"/></request>
Transport Locate:
<request><state seek="4:33"/></request>
<request><state seek="1.5 h"/></request>
<request><state seek="42"/></request>
(seconds)<request><state seek="4:23:12.322"/></request>
Reset/Calibrate Head-Tracker:
<request><state tracker="reset"/></request>
Source#
Set Source Position (in meters):
<request><source id="42"><position x="1.2" y="-2"/></source></request>
Fixed Position (
true
/false
):<request><source id="42"><position fixed="true"/></source></request>
<request><source id="42"> <position x="1.2" y="-2" fixed="true"/> </source></request>
Set Source Orientation (in degrees, zero in positive x-direction):
<request><source id="42"><orientation azimuth="93"/></source></request>
Set Source Gain (Volume in dB):
<request><source id="42" volume="-2"/></request>
Set Source Mute (
true
/false
):<request><source id="42" mute="true"/></request>
Set Source Name:
<request><source id="42" name="My first source" /></request>
Set Source Model (
point
/plane
):<request><source id="42" model="point"/></request>
Set Source Port Name (any JACK port):
<request><source id="42" port="system:capture_3"/></request>
New Source (some of the parameters are optional):
<request> <source new="true" name="a new source" file="path/to/audio.wav" channel="2"> <postition x="-0.3" y="1" fixed="true"/> <orientation azimuth="99"/> </source> </request>
<request> <source new="true" name="a source from pd" port="pure_data_0:output0" volume="-6"> <postition x="0.7" y="2.3"/> </source> </request>
Delete Source:
<request><delete><source id="42"/></delete></request>
Reference#
Set Reference Position (in meters):
<request><reference><position x="-0.3" y="1.1"/></reference></request>
Set Reference Orientation (in degrees, zero in positive x-direction):
<request><reference><orientation azimuth="90"/></reference></request>