renoise.PatternTrackAutomation

Graphical automation of a device parameter within a pattern track.

General remarks: Automation "time" is specified in lines + optional 1/256 line fraction for the sub line grid. The sub line grid has 256 units per line. All times are internally quantized to this sub line grid. For example a time of 1.5 means: line 1 with a note column delay of 128

Constants

Playmode

{
    PLAYMODE_POINTS: integer = 1,
    PLAYMODE_LINES: integer = 2,
    PLAYMODE_CURVES: integer = 3,
}

Properties

dest_device : renoise.AudioDevice

Destination device. Can in some rare circumstances be nil, i.e. when a device or track is about to be deleted.

dest_parameter : renoise.DeviceParameter

Destination device's parameter. Can in some rare circumstances be nil, i.e. when a device or track is about to be deleted.

playmode : renoise.PatternTrackAutomation.Playmode

play-mode (interpolation mode).

playmode_observable : renoise.Document.Observable

Track changes to document properties or general states by attaching listener functions to it.

length : integer

Range: (1 - NUM_LINES_IN_PATTERN)

selection_start : integer

Range: (1 - automation.length + 1)

selection_start_observable : renoise.Document.Observable

Track changes to document properties or general states by attaching listener functions to it.

selection_end : integer

Range: (1 - automation.length + 1)

selection_end_observable : renoise.Document.Observable

Track changes to document properties or general states by attaching listener functions to it.

selection_range : integer[]

Get or set selection range. when setting an empty table, the existing selection, if any, will be cleared. array of two numbers [] OR Range: (1 - automation.length + 1)

selection_range_observable : renoise.Document.Observable

Track changes to document properties or general states by attaching listener functions to it.

points : EnvelopePoint[]

Get all points of the automation. When setting a new list of points, items may be unsorted by time, but there may not be multiple points for the same time. Returns a copy of the list, so changing points[1].value will not do anything. Instead, change them via points = { modified_points }.

points_observable : renoise.Document.ObservableList

Track changes to document lists by attaching listener functions to it. NB: Notifiers will not broadcast changes made to list items, but only changes to the lists layout (items got added, removed, swapped).


Functions

clear(self)

Removes all points from the automation. Will not delete the automation from tracks[]:automation, instead the resulting automation will not do anything at all.

clear_range(self, from_time : integer, to_time : integer)

Remove all existing points in the given [from, to) time range from the automation.

copy_from(self, other : renoise.PatternTrackAutomation)

Copy all points and playback settings from another track automation.

has_point_at(self, time : integer)

->boolean

Test if a point exists at the given time

add_point_at(self, time : integer, value : number, scaling : number?)

Insert a new point, or change an existing one, if a point in time already exists.

remove_point_at(self, time : integer)

Removes a point at the given time. Point must exist.


Local Structs

EnvelopePoint

Single point within a pattern track automation envelope.


Properties

time : integer

Automation point's time in pattern lines in Range: (1 - NUM_LINES_IN_PATTERN).

value : number

Automation point value in Range: (0 - 1.0)

scaling : number

Automation point scaling. Used in 'lines' playback mode only - 0.0 is linear.