Node: Watchout Media Server
Jump to navigation
Jump to search
The Watchout Media Server node allows you to control and gain insight into the current state of a Watchout Production or Display computer. The Watchout Media Server node is itself a WoTimeline object, implementing all the functionality of that type for control of the main timeline. Auxiliary timelines can be controlled by using the timelineNamed("timeline")
function to get an object that can control a specific auxiliary timeline. Status for auxiliary timelines is tracked from the moment of the first reference to that timeline.
Contents
Settings
Expected Type | Details | Default | |
---|---|---|---|
localInterface
|
LocalInterface | The local network adapter that will be used to communicate with the Watchout software. | LocalInterface("0.0.0.0")
|
remoteAddress
|
RemoteAddress/IP | The address of the remote Watchout device. When connecting to a Watchout Production instance, use port 3040 . When connecting to a Watchout Display instance, use port 3039 .
|
IP("10.10.1.1", 3040)
|
Parameters
Type | Details | |
---|---|---|
softwareName
|
String | Note: The parameter is read-only. The name of the Watchout software currently running. This currently can be either WATCHMAKER or WATCHPOINT .
|
showName
|
String | Note: The parameter is read-only. The name of the show currently loaded in Watchout. |
online
|
Boolean | true if the machine is currently online, otherwise false . Setting this to true will take a Production instance online, updating any Display instances that are out of sync the the Production instance at that point in time.
|
busy
|
Boolean | Note: The parameter is read-only. When true, the Watchout instance is currently unavailable to process commands, most likely due to being in a modal state or in the process of synchronizing content. |
standby
|
Boolean | true if the machine is currently in standby, otherwise false . Setting this to true will take a machine into standby, and setting it to false will take a machine out of standby.
|
currentTime
|
Time | The current playhead position of the main timeline in Watchout. Setting this value to a new time will seek the playhead to the new time. |
rate
|
Number | The current rate of playback of all timelines in Watchout. This value is only used for Display instances, and must be between 0.8 and 1.2 . Audio playback is not supported when setting the rate to a value other than 1 .
|
playing
|
Boolean | true if the main timeline is currently playing, otherwise false . Setting this value controls the playing state of the main timeline.
|
active
|
Boolean | true if the main timeline is playing, or if the playhead is not at 0 seconds. Setting this value to true for the main timeline has no effect, but setting it to false will stop the main timeline and return the playhead to 0 seconds.
|
currentCue
|
String or WoControlCue | Note: The parameter is write-only. It can not be directly read. The current cue being executed or having finished executing in Watchout. This can only be set directly, to either a String or a WoControlCue. To get the current cue, you must use the special getCurrentCue(…) function, which takes a Consumer that will receive the current cue. This behavior is the result of getting the current cue being a non-trivial task for a value that may not be readily available. See the function documentation for more details.
|
timelineName
|
String | Note: The parameter is read-only. For the main timeline, always returns an empty string. This value is present for parity with the WoTimeline type where it returns the name of the timeline being manipulated. |
Functions
Arguments | Returns | Details | |
---|---|---|---|
getCurrentCue(consumer)
|
Consumer<WoControlCue> consumer - The function that will process the cue when it is returned.
|
Void | Get the current control cue from Watchout. This will be the closest previous cue on the timeline from the current playhead position, similar to how lighting consoles report cues. If the playhead is paused at the exact position of a control cue, the closest previous control cue on the timeline is returned. Because of this behavior, multiple properties have to be compared and processed before a value can be passed to the provided Consumer. |
timelineNamed(t)
|
String t - The timeline to retrieve.
|
WoTimeline | Get the timeline with the given name, allowing control of that specific timeline. Returns null if the timeline does not exist.
|
load(file, online)
|
String file - The file to load.
Boolean |
Void | Load the specified file and optionally go online afterwards. The file name is a full directory path for a Watchout Production instance, or the name of the show for a Watchout Display instance. |
setStandby(standby, fade)
|
Boolean standby - The desired standby state.
Time |
Void | A special way to invoke standby that allows you to specify the amount of time over which the fade will occur. |
hitTest(p, consumer)
|
Point p - The point to check for collision.
Consumer<WoHitTestResult> |
Void | Check if the given point intersects with a piece of interactive media on the stage. See the documentation for WoHitTestResult for details on the type of information available from a hit test. |
deactivateAll()
|
Void | Deactivates and resets all timelines, including the Main and all auxiliary timelines. | |
getCues(consumer)
|
Consumer<List<WoControlCue>> consumer - The function that will process the list of cues when they are returned. | Void | Get all the cues from the main timeline. Because multiple layers must be processed this function takes an indeterminate amount of time to run, and therefore requires a consumer to be provided to handle the eventual results. This prevents the entire show from waiting for cues to be determined, and instead defers the processing. |
Example Usage
No examples provided.
Nodes | |
---|---|
Devices | ArtNet Input · ArtNet Output · Interactive LED Processor · NDI™ Input · NDI™ Output · OSC Input · OSC Output · Projector · SensorLink · TCP · TUIO Output · UDP Input · UDP Output · Watchout Media Server |
Objects | LED Tile Layout · List · Map · Random Number · Simulated Touch · Timer · Value · Wave |
Operators | Blend · Change · Clip · Cluster Tracker · DMX Multiverse Merge · Ease · Filter · Hold · JSON Mapper · JSON Stringify · Logic · Math · Proximity · Range · Rotate · Scale · Shear · Smooth · Touch Mapper · Translate |
Scenes | External Scene · Material Scene |
Materials | Graph · Touch Material |
Scripting | Script Function · Script |
Comments | Comment |