Table of Contents
Exaplay can be controlled remotely by TCP commands or via OSC commands. These interfaces needs activation in the global settings file config.xml
, which is stored in the Documents folder of the current user:
Remote Control via TCP/IP
Configuration in config.xml
in Exaplay folder, under <tcp_control>
section.
Example:
<tcp_control> <addr ip="*" port="5000"/> </tcp_control>
The command lines must end with CRLF, the response messages from Exaplay will also end with CRLF. Once done, save and restart Exaplay.
Exaplay will maintain a persistent thread for each connection until the other end closes the socket, so, it is alright to keep it open, and even polling cue state information.
Command | Description | Send example | Return example | |
hello |
Echo test | hello <cr> <lf> |
hallo |
|
ver |
To retrieve the current version | ver <cr> <lf> |
Exaplay,1.1.0.0 |
|
play %1 |
To play the %1 cue index
If Index |
play 3 <cr> <lf> |
OK |
|
stop |
Stop current playback | stop <cr> <lf> |
OK |
|
pause |
Pauses current cue playback | pause <cr> <lf> |
OK |
|
seek %1 |
Seeks current cue to %1 , in seconds |
seek 10 <cr> <lf> |
OK |
|
get cue |
Retrieves current cue state, returns a string with values separated by commas | get cue 012345 <cr> <lf> |
play,1,562,18.733,50.000,30.00 |
|
Index | Value | |||
0 | Current play status, could be ‘play ’,’stop ’, or ‘pause ’ |
|||
1 | Current play index, starting from 1 | |||
2 | Current frame index for the playing cue | |||
3 | Current time for playing cue | |||
4 | Duration of the current cue | |||
5 | FPS of current cue | |||
get vol |
Retrieves the current audio volume, from 0 to 100 | get vol <cr> <lf> |
100 |
|
set vol %1 |
Set the current audio volume by %1, from 0 to 100 | set vol 50 <cr> <lf> |
OK |
Remote Control via OSC
Configuration in config.xml
in Exaplay folder.
OSC In (receive commands)
Exaplay can open several UDP ports. The prefix must be specified in the attribute for the osc_in section, the incoming messages must follow /%prefix%/
.
Example:
<osc_in prefix="exaplay">
<addr ip="*" port="1337"/>
</osc_in>
Message example assuming a prefix ‘exaplay’:
/exaplay/play
Message | Description | |
play |
Will play the index passed in the int32 parameter | |
stop |
Stops the current playback | |
pause |
Pauses the current playback |
OSC OUT (Exaplay notifying state)
Exaplay can be configured to report to a set of addresses and ports. The prefix must be specified in the attribute for the osc_out section, the incoming messages must follow /%prefix%/
.
Config example:
<osc_out prefix="exaplay"> <addr ip="*" port="8000"/> <addr ip="192.168.1.204" port="8000"/> </osc_out>
Message example assuming a prefix ‘exaplay’:
/exaplay/cuetime
Exaplay will send an OSC Bundle with the following messages:
Message | Description | |
status |
Int32 with the current play status | |
Value | Meanimg | |
0 |
stop |
|
1 |
play |
|
2 |
pause |
|
cueindex |
The current playing cue index | |
cueframe |
The current playing cue frame index | |
cuetime |
The current playing cue time | |
cueduration |
The duration in seconds for the current playing cue |