Expressions - KirbyLV/D3-Propellerhead-Wiki GitHub Wiki

Please note that the new docs on the help.disguise.one site are much better regarding expressions. Also, Expression Variable devices and layers are your new friends.

Sources for Expressions:

self

An easy way to find an example of the expression formatting is to alt+drag an attribute to the "text" parameter of a Text Module.

Objects

General formatting would be type:objectName.property

For example:

screen:screenname

List of Objects:

any object in the "Track", "Stage", "Transport", or "Device" panels

ledscreen

machine

module

OscDevice

screen

track

TransportManager

Functions Allowed in Expressions:

Math Expressions

Expression Examples:

  • Note that any spaces in an object name need the spaces replaced with underscores

  • Enclose the entire expression in {} in order to have the expression return the evaluated value rather than the expression itself.

Simple call to a specific layer

{module:myVideoLayer._xxx_:s}

Return name of a specific layer

`{module:myVideoLayer.layer.name:s}

Dynamic call to get current filename from a layer:

{TransportManager:default.player.activeLayers[1].module.video.video_file.descriptionExtended:s}

TransportManager = Object type

default = name of specific object

player = attribute of default

activeLayers[1] = attribute of player, referencing an item in a zero-based list

module = attribute of the called layer

video = attribute of module. Not all module types would necessarily have this type of attribute

video_file = attribute of video. May return none.

descriptionExtended = shortest version of the name of video_file

:s = return data in string format

To get current cue / section names:

{osc:d3.showcontrol.sectionhint:s}

To display text of osc string:

{osc:d3.path.var:s}

Module Attributes (where module references a layer named "VT")

module:VT

	  acesExposure
	      Type: float
	
	  acesGamma
	      Type: float
	
	  at_end_point
	      Type: uint
	
	  bottom
	      Type: float
	
	  cdl
	      Type: CDL::RP
	
	  clipEndFrame
	      Type: int, read only
	
	  clipLoopEndFrame
	      Type: int, read only
	
	  clipLoopStartFrame
	      Type: int, read only
	
	  clipNFrames
	      Type: int, read only
	
	  clipStartFrame
	      Type: int, read only
	
	  colour_shift
	      Type: ColourShift
	
	  cropSoftness
	      Type: float
	
	  frameNumberDisplay
	      Type: int, read only
	
	  left
	      Type: float
	
	  mode
	      Type: uint
	
	  output
	      Type: LogicalAudioOutDevice::RP
	
	  pos
	      Type: Vec2
	
	  right
	      Type: float
	
	  rotation
	      Type: float
	
	  scale
	      Type: Vec2
	
	  size
	      Type: float
	
	  speed
	      Type: float
	
	  top
	      Type: float
	
	  transition_time
	      Type: float
	
	  video
	      Type: VideoClip::RP
	
	  volume
	      Type: float
	
	blendMode
	      Type: uint
	
	  brightness
	      Type: float
	
	  canvas
	      Type: DxTexture::RP, read only
	
	  canvasSize
	      Type: Vec2, read only
	
	  colour
	      Type: Colour, read only
	
	  forceTint
	      Type: Colour
	
	  isExternalControl
	      Type: bool, read only
	
	  isGraphical
	      Type: bool, read only
	
	  isInternalControl
	      Type: bool, read only
	
	  isRendering
	      Type: bool, read only
	
	  layer
	      Type: Layer, read only
	
	  mapping
	      Type: Projection::RP
	
	  moduleConfigObject
	      Type: ModuleConfig::RP
	
	  needsPreview
	      Type: bool, read only
	
	  ownCanvas
	      Type: bool, read only
	
	  palette
	      Type: DxTexture::RP
	
	  tint
	      Type: Colour
	
	  xCol
	      Type: float
	
	  yCol
	      Type: float1




module:VT.video

	  Video_Input_
	      Type: LogicalVideoInDevice::RP
	
	  acesExposure
	      Type: float
	
	  acesGamma
	      Type: float
	
	  acesTransform
	      Type: AcesInputTransformParameters
	
	  audioBiasSec
	      Type: float
	
	  audioOuts
	      Type: AudioOutputs::RP
	
	  audioTracks
	      Type: Array<AudioTrack::RP>
	
	  bilinear_filtering
	      Type: uint
	
	  bottom
	      Amount to crop from the bottom edge of the video frame, in pixels
	
	  clip
	      Type: Rect
	
	  clip_type
	      Type: uint
	
	  colourProfile
	      Type: ColourProfile::RP
	
	  colourShift
	      Type: ColourShift::RP
	
	  dataRate
	      Data rate of the clip playback (MB/sec)
	
	  end
	      End frame index of the video clip. Use this to trim frames from the end of the clip
	
	  file
	      Type: VideoAsset::RP
	
	  fileFps
	      FPS of the original video
	
	  fileFrameSize
	      Resolution of the original video file (pixels)
	
	  fileNFrames
	      Number of frames in the original video file
	
	  fps
	      Current frames-per-second of the video clip
	
	  frame_blending
	      Type: uint
	
	  in
	      Type: int
	
	  isVideoIn
	      Type: bool, read only
	
	  left
	      Amount to crop from the left edge of the video frame, in pixels
	
	  logicalVideoIn
	      Type: LogicalVideoInDevice::RP, read only
	
	  nBeats
	      Type: float
	
	  out
	      Type: int
	
	  prefetchOptions
	      Type: PrefetchLookaheads::RP
	
	  quantised
	      Type: uint
	
	  right
	      Amount to crop from the right edge of the video frame, in pixels
	
	  sampleRateOption
	      Type: uint
	
	  speed
	      Type: float
	
	  start
	      Start frame index of the video clip. Use this to trim frames from the start of the clip
	
	  top
	      Amount to crop from the top edge of the video frame, in pixels
	
	  video_file
	      Type: VideoAsset::RP
	
	  zoom
	      The point of interest zoomed in towards when the content is scaled
	
	  zoom_point
	      Type: Vec2