3. JavaScript command reference: Difference between revisions
No edit summary |
No edit summary |
||
(2 intermediate revisions by the same user not shown) | |||
Line 89: | Line 89: | ||
|- | |- | ||
|<code>print_console("text" + mxw.widget("/mxw/path").getStringValue())</code> || prints the name of the desired playlist cue || <code>print_console("The clip name in the second cue is" + mxw.widget("/mxw/playlist/container/1/column/0/row/1").getStringValue());</code> | |<code>print_console("text" + mxw.widget("/mxw/path").getStringValue())</code> || prints the name of the desired playlist cue || <code>print_console("The clip name in the second cue is" + mxw.widget("/mxw/playlist/container/1/column/0/row/1").getStringValue());</code> | ||
|- | |||
|<code>print_statusline("text")</code> || print text on the status line|| <code>print text on status line()</code> | |||
|- | |- | ||
!colspan="3" | I/O | !colspan="3" | I/O | ||
Line 190: | Line 192: | ||
|<code>mxw.preload(preload_number).set_layer_position(layer_pos)</code> || set layer index of the preload|| <code>mxw.preload(7).set_layer_position(2)</code> | |<code>mxw.preload(preload_number).set_layer_position(layer_pos)</code> || set layer index of the preload|| <code>mxw.preload(7).set_layer_position(2)</code> | ||
|- | |- | ||
|<code>mxw.preload(preload_number).set_track_position( | |<code>mxw.preload(preload_number).set_track_position(track_pos)</code> || set the track index of the preload|| <code>mxw.preload(11).set_track_position(2)</code> | ||
|- | |- | ||
|<code>mxw.makesectionscreenshot("directory_saving_path", initial_x, initial_y, size_x, size_y)</code> || saves a cropped screenshot in the desiderd path|| <code>mxw.makesectionscreenshot("c:/Users/MXWendler/Desktop/b.png", 0,1, 400, 200)</code> | |<code>mxw.makesectionscreenshot("directory_saving_path", initial_x, initial_y, size_x, size_y)</code> || saves a cropped screenshot in the desiderd path|| <code>mxw.makesectionscreenshot("c:/Users/MXWendler/Desktop/b.png", 0,1, 400, 200)</code> | ||
|- | |- | ||
|<code>mxw.widget("/mxw/path").setStringValue("named by script")</code> || set the name of a cue in the playlist|| <code>mxw.widget("/mxw/playlist/container/1/column/0/row/1").setStringValue("background videoclip")</code> | |<code>mxw.widget("/mxw/path").setStringValue("named by script")</code> || set the name of a cue in the playlist|| <code>mxw.widget("/mxw/playlist/container/1/column/0/row/1").setStringValue("background videoclip")</code> |
Latest revision as of 14:52, 17 October 2023
Here are listed the main commands that can be used for scripting with JS.
Legend
The standard used to represent the available values for each command is:
FLOATS are represented with one decimal:
0.0 .. 1.0
→ all float values between 0 and 1 included
INTEGERS are represented with numbers or descriptions:
1 .. 5
→ all integers between 1 and 5 included ( 1 , 2 , 3 , 4 , 5 )
1 .. (MAX n layers)
→ all the integers between 1 and the maximum index of layers in MXW (e.g. if 6 layers are being used the values are integers between 1 and 6 included)
When only one number is indicated it means that only one option is given. This is found in addresses of buttons, checkboxes and in the options where "0" or "1" are the only significant values
STRINGS are represented between double quotation marks:
/mxw/set info
When “name”
is contained in the available string variable, then the content is to be substituted with the actual name.
E.G. : to select and play a patch called “patch_one” from its name, the address /mxw/set
with tokens "play" "name_of_patch"
has to be used, resulting in this OSC command:
/mxw/set play patch_one
When OR is found it means that two options can deliver a similar result. One of the two formats has to be used at one time.
Here are listed all the commands that MXW recognizes.
Legend
The standard used to represent the available values for each command is:
FLOATS are represented with one decimal:
0.0 .. 1.0
→ all float values between 0 and 1 included
INTEGERS are represented with numbers or descriptions:
1 .. 5
→ all integers between 1 and 5 included ( 1 , 2 , 3 , 4 , 5 )
1 .. (MAX n layers)
→ all the integers between 1 and the maximum index of layers in MXW (e.g. if 6 layers are being used the values are integers between 1 and 6 included)
When only one number is indicated it means that only one option is given. This is found in addresses of buttons, checkboxes and in the options where "0" or "1" are the only significant values
STRINGS are represented between double quotation marks:
/mxw/set info
When “name”
is contained in the available string variable, then the content is to be substituted with the actual name.
E.G. : to select and play a patch called “patch_one” from its name, the address /mxw/set
with tokens "play" "name_of_patch"
has to be used, resulting in this OSC command:
/mxw/set play patch_one
When OR is found it means that two options can deliver a similar result. One of the two formats has to be used at one time.
Set Reference
JS COMMAND | DESCRIPTION | EXAMPLE |
---|---|---|
Software Info | ||
mxw.millis |
returns the amount of milliseconds passed since opening the software | print_console("current passed time is" + mxw.millis );
|
mxw.width |
returns the current frame width in px | print_console("frame width is" + mxw.width );
|
mxw.height |
returns the current frame height in px | print_console("frame height is" + mxw.height);
|
mxw.outwidth |
returns current output width | print_console("output height is" + outwidth);
|
mxw.outheight |
returns the current output height | print_console("output width is" + mxw.outheight);
|
mxw.framecounter |
returns the amount of frames rendered since opening the software | print_console("total number of frames rendered is" + mxw.framecounter);
|
print_console("text" + mxw.widget("/mxw/path").getStringValue()) |
prints the name of the desired playlist cue | print_console("The clip name in the second cue is" + mxw.widget("/mxw/playlist/container/1/column/0/row/1").getStringValue());
|
print_statusline("text") |
print text on the status line | print text on status line()
|
I/O | ||
mxw.dmx() |
returns the DMX value received from the specified universe and channel | print_console("DMX value in u. 1, ch. 4 is" + mxw.dmx(1,4));
|
mxw.midi() |
returns the MIDI value received from the specified device and channel | print_console("MIDI value in dev. 1, ch. 6 is" + mxw.midi(1,6));
|
mxw.keyboard("ASCII_code") |
returns if the specified key is pressed or not | mxw.keyboard(65)
|
mxw.pjlink("on", "IP_ADDRESS", "pj_password") |
sends a pjlink command to the selected projector and turns it on | mxw.pjlink("on", "192.168.1.2", "panasonic")
|
mxw.pjlink("off", "IP_ADDRESS", "pj_password") |
sends a pjlink command to the selected projector and turns it off | mxw.pjlink("off", "192.168.1.2", "panasonic")
|
mxw.pjlink("avmute_on", "IP_ADDRESS", "pj_password") |
sends a pjlink command to the selected projector and mutes audio and video | mxw.pjlink("avmute_on", "192.168.1.2", "panasonic")
|
mxw.pjlink("avmute_off", "IP_ADDRESS", "pj_password") |
sends a pjlink command to the selected projector and unmutes audio and video | mxw.pjlink("avmute_off", "192.168.1.2", "panasonic")
|
mxw.pjlink("vmute_on", "IP_ADDRESS", "pj_password") |
sends a pjlink command to the selected projector and mutes video | mxw.pjlink("vmute_on", "192.168.1.2", "panasonic")
|
mxw.pjlink("vmute_off", "IP_ADDRESS", "pj_password") |
sends a pjlink command to the selected projector and unmutes video | mxw.pjlink("vmute_off", "192.168.1.2", "panasonic")
|
mxw.media("camera_name").ptz("ptz_is_supported") |
control if a NDI Camera supports PTZ | mxw.media("USB Cam").ptz("ptz_is_supported")
|
mxw.media("camera_name").ptz("ptz_zoom", value) |
control the zoom of a NDI PTZ Camera, values from 0(zoomed in) to 1(zoomed out) | mxw.media("USB Cam").ptz("ptz_zoom", 0.5)
|
mxw.media("camera_name").ptz("ptz_pan_tilt", value_pan, value_tilt) |
control the pan and tilting of a NDI PTZ Camera (values from -1 to 1) |
|
mxw.media("camera_name").ptz("ptz_zoom_speed", value) |
control the zoom speed a NDI PTZ Camera, values from -1(zoom outwards) to 1 (zoom inwards) |
|
mxw.media("camera_name").ptz("ptz_pan_tilt_speed", pan_speed, tilt_speed) |
control the pan and tilt speed a NDI PTZ Camera, values -1 (move right/down) to 1 (move left/up) | mxw.media("USB Cam").ptz("ptz_pan_tilt_speed", -0.3, 0.8)
|
mxw.media("camera_name").ptz("ptz_store_preset", preset_number) |
store current position, focus, zoom, values 0 to 99 | mxw.media("USB Cam").ptz("ptz_store_preset", 75)
|
mxw.media("camera_name").ptz("ptz_recall_preset",preset_number, speed) |
recalls a previously stored preset,values 0 to 99 and changes to it at a specific speed (values 0 to 1) | mxw.media("USB Cam").ptz("ptz_recall_preset", 4, 0.5 )
|
mxw.media("camera_name").ptz("ptz_auto_focus") |
activates or deactivates the camera in auto-focus | mxw.media("USB Cam").ptz("ptz.autofocus")
|
mxw.media("camera_name").ptz("ptz_focus", focus_value) |
focus to absolute value (0= focused to infinity, 1= focus the closest possible) | mxw.media("USB Cam").ptz("ptz_focus", 0.5)
|
mxw.media("camera_name").ptz("ptz_focus_speed", speed_value) |
focus at a particular speed, values from -1(outwards), to 1 (inwards) | mxw.media("USB Cam").ptz("ptz_focus_speed", -0.2)
|
mxw.media("camera_name").ptz("ptz_white_balance_auto") |
put the camera in auto white-balance mode | mxw.media("USB Cam").ptz("ptz_white_balance_auto")
|
mxw.media("camera_name").ptz("ptz_white_balance_indoor") |
put the camera in indoor white balance | mxw.media("USB Cam").ptz("ptz_white_balance_indoor")
|
mxw.media("camera_name").ptz("ptz_white_balance_outdoor") |
put the camera in outdoor white balance | mxw.media("USB Cam").ptz("ptz_white_balance_outdoor")
|
mxw.media("camera_name").ptz("ptz_white_balance_oneshot") |
use the current brightness to automatically set the current white balance | mxw.media("USB_Cam").ptz("ptz_white_balance_oneshot")
|
mxw.media("camera_name").ptz("ptz_white_balance_manual", red value, blue value) |
Set the manual camera white balance using the R, B values, (0.0 = not red/not blue , 1.0 = very red/very blue) | mxw.media("camera_name").ptz("ptz_white_balance_manual", 0.1, 0.7)
|
mxw.media("camera_name").ptz("ptz_exposure_auto") |
put the camera in auto-exposure mode | mxw.media("USB_Cam").ptz("ptz_exposure_auto")
|
mxw.media("camera_name").ptz("ptz_exposure_manual", exposure_level) |
manually set the camera exposure iris, values from 0.0(dark) to 1.0(light) | mxw.media("USB_Cam").ptz("ptz_exposure_manual", 0.4)
|
mxw.media("camera_name").ptz("ptz_exposure_manual_v2", iris_level, gain_level, shutter_speed) |
Manually set the camera exposure parameters, values iris from 0.0(dark) to 1.0(light), values gain from 0.0(dark) to 1.0(light), values shutter_speed from 0.0(slow) to 1.0(fast) | mxw.media("USB_Cam").ptz("ptz_exposure_manual_v2", 0.4, 0.2, 0.5)
|
Playlist Control | ||
mxw.playlist.preload_media() |
preload used media | mxw.playlist.preload_media()
|
mxw.playlist.pause() |
pause the playlists or restart if already paused | mxw.playlist.pause()
|
mxw.playlist.play() |
play the playlist | mxw.playlist.play()
|
mxw.playlist.go_pause()( true/false ) |
pause the playlist (when true), unpause the playlist (when false) | mxw.playlist.go_pause()(true)
|
mxw.playlist.skiptonext() |
skip to the next cue | mxw.playlist.skiptonext()
|
mxw.playlist.go_next() |
go to the next cue without playing | mxw.playlist.go_next()
|
mxw.playlist.go_prev() |
go to previous cue | mxw.playlist.go_prev()
|
mxw.playlist.go_first() |
go to the first cue | mxw.playlist.go_first()
|
mxw.playlist.navigate_index(index_value) |
go to the specified cue index | mxw.playlist.navigate_index(2)
|
mxw.playlist.navigate_string("index_string") |
go to the specified cue string | mxw.playlist.navigate_string("BG_video2")
|
Preload Control | ||
mxw.preload(preload_number).clear() |
clears the selected preload | mxw.preload(2).clear()
|
mxw.preload(preload_number).set_media("media_name") |
set a media in the preload with a filename string | mxw.preload(preload_number).set_media("try.mp4")
|
mxw.preload(preload_number).set_name("new_media_name") |
renames a preload | mxw.preload(4).set_name("new_background")
|
mxw.preload(preload_number).add_preload() |
load a preload in the layers | mxw.preload(3).add_preload()
|
mxw.preload(preload_number).trigger_preload() |
trigger a layer from the preload | mxw.preload(5).trigger_preload()
|
mxw.preload(preload_number).get_activated() |
requests if the preload is editable | mxw.preload(9).get_activated()
|
mxw.preload(preload_number).set_activated(true/false) |
opens the preload for edit and viceversa | mxw.preload(12).set_activated(false)
|
mxw.preload(preload_number).get_layer_position() |
returns the layer index of the preload | mxw.preload(1).get_layer_position()
|
mxw.preload(preload_number).get_track_position() |
returns the track index of the preload | mxw.preload(8).get_track_position()
|
mxw.preload(preload_number).set_layer_position(layer_pos) |
set layer index of the preload | mxw.preload(7).set_layer_position(2)
|
mxw.preload(preload_number).set_track_position(track_pos) |
set the track index of the preload | mxw.preload(11).set_track_position(2)
|
mxw.makesectionscreenshot("directory_saving_path", initial_x, initial_y, size_x, size_y) |
saves a cropped screenshot in the desiderd path | mxw.makesectionscreenshot("c:/Users/MXWendler/Desktop/b.png", 0,1, 400, 200)
|
mxw.widget("/mxw/path").setStringValue("named by script") |
set the name of a cue in the playlist | mxw.widget("/mxw/playlist/container/1/column/0/row/1").setStringValue("background videoclip")
|