wekinator-node
Last updated
Last updated
An SDK to interface with Wekinator, a system for users to build new interactive systems by demonstrating human actions and computer responses, over OSC.
wekinator-node assumes that an instance of Wekinator is running. It communicates to the running instance of Wekinator via OSC. By default it will use the default host and port, but these can be set via the constructor parameters wekinatorHost
and wekinatorPort
. Additionally, localPort
can be specified to instruct Wekinator to send output messages as documented.
Another example is available here.
wekinator-node supports the Wekinator control messages documented here with the following Javascript method names.
List of methods
WekinatorNode
(constructor) takes wekinatorHost, wekinatorPort, localPort [optional]
connect
takes a callback
Connects to Wekinator, calls the callback once it's done.
disconnect
Closes the port to Wekinator
inputs
takes a list of floats
, sets the inputs to them in order
Send Wekinator current input values to populate the boxes/sliders on its GUI. Attach one float per input, in order.
outputs
takes a list of floats
, sets the outputs to them in order
Send Wekinator current output values to populate the boxes/sliders on its GUI. Attach one float per output, in order.
startRecording
Start recording examples (NOT used for dynamic time warping recording)
stopRecording
Stop recording examples (NOT used for dynamic time warping recording)
startDtwRecording
takes a number
Starts recording dynamic time warping examples for the gesture type given by the number (gesture types are indexed starting from 1)
stopDtwRecording
Stops recording dynamic time warping examples (no int required)
train
Train on current examples
cancelTrain
Cancel current training (if it’s in progress)
startRunning
Start running (if possible)
stopRunning
Stop running (if currently running)
deleteAllExamples
Delete all examples for all models
enableModelRunning
takes a list of ints
Enables running of all models whose indices are listed in the list of ints in the message. Model indices start with 1. This is equivalent to enabling the “play” button next to a model row.
disableModelRunning
takes a list of ints
Disables running of models with these indices. This is equivalent to disabling the “play” button next to a model row.
enableModelRecording
takes a list of ints
Enables recording of all models whose indices are listed in the list of ints in the message. Model indices start with 1. This is equivalent to enabling the “record” button next to a model row.
disableModelRecording
takes a list of ints
Disables recording of models with these indices. This is equivalent to disabling the “record” button next to a model row.
setInputNames
takes a list of names
Sets the Wekinator input names to those names, in order.
setOutputNames
takes a list of names
Sets the Wekinator output names to those names, in order.
selectInputsForOutput
takes output, inputs
Connects a list of inputs to a specific output.
trainOnData
takes a list of objects with the properties 'inputs' and 'outputs', each of which are arrays of floats like in inputs
and outputs
.