From ace9646b0217c7e7e8314b82799e5e23889d14c7 Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Sun, 2 Oct 2022 14:28:43 +0200 Subject: [PATCH] Update Luadoc for upcoming Ardour 7 --- include/class-reference.html | 1277 ++++++++++++++++++++-------------- 1 file changed, 748 insertions(+), 529 deletions(-) diff --git a/include/class-reference.html b/include/class-reference.html index becc5a8..588e5f9 100644 --- a/include/class-reference.html +++ b/include/class-reference.html @@ -351,27 +351,23 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C - - +
Methods
boolisnil ()
longread (FloatArray, FloatArray, FloatArray, long, long, unsigned int)
start
Start position in session samples.
cnt
Number of samples to read.
timecnt_tread (FloatArray, FloatArray, FloatArray, timepos_t, timecnt_t, unsigned int)

Inherited from ARDOUR:Playlist

- - + - - + + - - - - - + + + - - - + + + @@ -381,17 +377,16 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C - - - - - + + + + - - - + + + @@ -459,35 +454,6 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C
Methods
voidadd_region (Region, long, float, bool, int, double, bool)

Note: this calls set_layer (..., DBL_MAX) so it will reset the layering index of region

voidadd_region (Region, timepos_t, float, bool)
Regioncombine (RegionList)
unsigned intcount_regions_at (long)
Playlistcut (AudioRangeList&, bool)
unsigned intcount_regions_at (timepos_t)
Playlistcut (TimelineRangeList&, bool)
DataTypedata_type ()
voidduplicate (Region, long, long, float)
gap
from the beginning of the region to the next beginning
voidduplicate_range (AudioRange&, float)
voidduplicate_until (Region, long, long, long)
gap
from the beginning of the region to the next beginning
end
the first sample that does _not_ contain a duplicated sample
voidduplicate (Region, timepos_t&, timecnt_t, float)
voidduplicate_range (TimelineRange&, float)
voidduplicate_until (Region, timepos_t&, timecnt_t, timepos_t)
boolempty ()
Regionfind_next_region (long, RegionPoint, int)
longfind_next_region_boundary (long, int)
longfind_next_transient (long, int)
Regionfind_next_region (timepos_t, RegionPoint, int)
timepos_tfind_next_region_boundary (timepos_t, int)
longfind_next_transient (timepos_t, int)
IDget_orig_track_id ()
boolhidden ()
voidlower_region (Region)
voidraise_region_to_top (Region)
Regionregion_by_id (ID)
RegionListPtrregion_list ()
RegionListPtrregions_at (long)
RegionListPtrregions_touched (long, long)
start
Range start.
end
Range end.

Returns regions which have some part within this range.

RegionListPtrregions_with_end_within (Range)
RegionListPtrregions_with_start_within (Range)
RegionListPtrregions_at (timepos_t)
RegionListPtrregions_touched (timepos_t, timepos_t)
RegionListPtrregions_with_end_within (Range)
RegionListPtrregions_with_start_within (Range)
voidremove_region (Region)
boolset_name (std::string)
boolshared ()
voidsplit_region (Region, MusicSample)
Regiontop_region_at (long)
Regiontop_unmuted_region_at (long)
voidsplit_region (Region, timepos_t)
Regiontop_region_at (timepos_t)
Regiontop_unmuted_region_at (timepos_t)
voiduncombine (Region)
boolused ()
Cast
unsigned longsize ()
LuaTabletable ()
-

 ARDOUR:AudioRange

-

C‡: ARDOUR::AudioRange

-
- - - - - - - - - - -
Constructor
ARDOUR.AudioRange (long, long, unsigned int)
Methods
boolequal (AudioRange)
longlength ()
Data Members
long_end
unsigned intid
longstart
-

 ARDOUR:AudioRangeList

-

C‡: std::list<ARDOUR::AudioRange >

-
- - - - - - - - - - - -
Constructor
ARDOUR.AudioRangeList ()
Methods
AudioRangeback ()
boolempty ()
AudioRangefront ()
LuaIteriter ()
voidreverse ()
unsigned longsize ()
LuaTabletable ()

 ARDOUR:AudioRegion

C‡: boost::shared_ptr< ARDOUR::AudioRegion >, boost::weak_ptr< ARDOUR::AudioRegion >

is-a: ARDOUR:Region

@@ -503,6 +469,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolisnil () doublemaximum_amplitude (Progress)

Returns the maximum (linear) amplitude of the region, or a -ve number if the Progress object reports that the process was cancelled.

+ unsigned intn_channels () doublerms (Progress)

Returns the maximum (rms) signal power of the region, or a -1 if the Progress object reports that the process was cancelled.

floatscale_amplitude () @@ -515,6 +482,8 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C voidset_fade_out_length (long) voidset_fade_out_shape (FadeShape) voidset_scale_amplitude (float) + Cast + Readableto_readable ()

Inherited from ARDOUR:Region

@@ -526,9 +495,9 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C - - - + + + @@ -536,58 +505,53 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C - + - + - - + - + - - - - + + - + - - - + + - + - - + + - - - + + + -
voidcaptured_xruns (XrunPositions&, bool)
voidclear_sync_position ()
Controlcontrol (Parameter, bool)
boolcovers (long)
voidcut_end (long, int)
voidcut_front (long, int)
boolcovers (timepos_t)
voidcut_end (timepos_t)
voidcut_front (timepos_t)
DataTypedata_type ()
boolexternal ()
boolhas_transients ()
boolimport ()
boolis_compound ()
unsigned intlayer ()
longlength ()
timecnt_tlength ()
boollocked ()
voidlower ()
voidlower_to_bottom ()
StringVectormaster_source_names ()
SourceListmaster_sources ()
voidmove_start (long, int)
voidmove_start (timecnt_t)
voidmove_to_natural_position ()
boolmuted ()
unsigned intn_channels ()
voidnudge_position (long)
voidnudge_position (timecnt_t)
boolopaque ()
Playlistplaylist ()
longposition ()
timepos_tposition ()

How the region parameters play together:

POSITION: first sample of the region along the timeline START: first sample of the region within its source(s) LENGTH: number of samples the region represents

boolposition_locked ()
doublequarter_note ()
voidraise ()
voidraise_to_top ()
voidset_hidden (bool)
voidset_initial_position (long)

A gui may need to create a region, then place it in an initial position determined by the user. When this takes place within one gui operation, we have to reset _last_position to prevent an implied move.

voidset_length (long, int)
voidset_initial_position (timepos_t)
voidset_length (timecnt_t)
voidset_locked (bool)
voidset_muted (bool)
boolset_name (std::string)

Note: changing the name of a Region does not constitute an edit

voidset_opaque (bool)
voidset_position (long, int)
voidset_position (timepos_t)
voidset_position_locked (bool)
voidset_start (long)
voidset_sync_position (long)

Set the region's sync point.

absolute_pos
Session time.
voidset_start (timepos_t)
voidset_sync_position (timepos_t)
voidset_video_locked (bool)
floatshift ()
Sourcesource (unsigned int)
longstart ()
timepos_tstart ()
floatstretch ()
boolsync_marked ()
LuaTable(long, ...)sync_offset (int&)
longsync_position ()
LuaTable(timecnt_t, ...)sync_offset (int&)
timepos_tsync_position ()

Returns Sync position in session time

Int64Listtransients ()
voidtrim_end (long, int)
voidtrim_front (long, int)
voidtrim_to (long, long, int)
voidtrim_end (timepos_t)
voidtrim_front (timepos_t)
voidtrim_to (timepos_t, timecnt_t)
boolvideo_locked ()
boolwhole_file ()
Cast
AudioRegionto_audioregion ()
MidiRegionto_midiregion ()
Readableto_readable ()

Inherited from ARDOUR:SessionObjectPtr

@@ -609,10 +573,10 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

Inherited from ARDOUR:Readable

- - - - + + + +
Methods
ReadableListload (Session&, std::string)
unsigned intn_channels ()
longread (FloatArray, long, long, int)
longreadable_length ()
ReadableListload (Session&, std::string)
unsigned intn_channels ()
longread (FloatArray, long, long, int)
longreadable_length ()

 ARDOUR:AudioSource

C‡: boost::shared_ptr< ARDOUR::AudioSource >, boost::weak_ptr< ARDOUR::AudioSource >

@@ -625,7 +589,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolempty () boolisnil () boolisnil () - longlength (long) + timepos_tlength () unsigned intn_channels () unsigned intn_channels () longread (FloatArray, long, long, int) @@ -633,7 +597,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C longreadable_length () floatsample_rate () Cast - Readableto_readable () + Readableto_readable ()

Inherited from ARDOUR:Source

@@ -642,8 +606,8 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C - - + + @@ -672,6 +636,8 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C
boolcan_be_analysed ()
XrunPositionscaptured_xruns ()
boolhas_been_analysed ()
longnatural_position ()
longtimeline_position ()
timepos_tnatural_position ()
timepos_ttimeline_position ()
longtimestamp ()
intuse_count ()
boolused ()

Inherited from ARDOUR:Track

+ + @@ -877,8 +843,8 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C - - + + @@ -889,6 +855,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

Inherited from PBD:Controllable

Constructor
ARDOUR.Track ()
Methods
Regionbounce (InterThreadInfo&, std::string)

bounce track from session start to session end to new region

itt
asynchronous progress report and cancel

Returns a new audio region (or nil in case of error)

voidset_automation_state (AutoState)
voidset_value (double, GroupControlDisposition)

Set `internal' value

All derived classes must implement this.

Basic derived classes will ignore group_override but more sophisticated children, notably those that proxy the value setting logic via an object that is aware of group relationships between this control and others, will find it useful.

value
raw numeric value to set
group_override
if and how to propagate value to grouped controls
voidstart_touch (double)
voidstop_touch (double)
voidstart_touch (timepos_t)
voidstop_touch (timepos_t)
booltoggled ()
doubleupper ()
boolwritable ()
+
Methods
voiddump_registry ()
std::stringname ()

Inherited from PBD:StatefulPtr

@@ -906,7 +873,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

AutomationList is a stateful wrapper around Evoral::ControlList. It includes session-specifics (such as automation state), control logic (e.g. touch, signals) and acts as proxy to the underlying ControlList which holds the actual data.

- + @@ -920,32 +887,25 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

Inherited from Evoral:ControlList

Methods
XMLNodeget_state ()
XMLNodeget_state ()
boolisnil ()
Commandmemento_command (XMLNode, XMLNode)
booltouch_enabled ()
- - - - + + - - - - + + - - + - - - - + +
Methods
voidadd (double, double, bool, bool)

Add an event to this list.

This method is intended to write automation in realtime. If the transport is stopped, guard-points will be added regardless of parameter with_guards.

when
absolute time in samples
value
parameter value
with_guards
if true, add guard-points
with_initial
if true, add an initial point if the list is empty
voidclear (double, double)

Remove all events in the given time range from this list.

start
start of range (inclusive) in audio samples
end
end of range (inclusive) in audio samples
voidadd (timepos_t, double, bool, bool)
voidclear (timepos_t, timepos_t)
voidclear_list ()
booleditor_add (double, double, bool)

Add an event to this list.

This method is intended for making manual changes from the GUI. An event will only be created if no other event exists at the given time.

when
absolute time in samples
value
parameter value
with_guards
if true, add guard-points

Returns true if an event was added.

doubleeval (double)

Queries the event value at the given time (takes a read-lock, not safe while writing automation).

where
absolute time in samples

Returns parameter value

booleditor_add (timepos_t, double, bool)
doubleeval (timepos_t)
EventListevents ()

Returns the list of events

boolin_write_pass ()

Returns true if transport is running and this list is in write mode

InterpolationStyleinterpolation ()

query interpolation style of the automation data

Returns Interpolation Style

LuaTable(double, ...)rt_safe_eval (double, bool&)

Realtime safe version of eval(). This may fail if a read-lock cannot be taken.

where
absolute time in samples
ok
boolean reference if returned value is valid

Returns parameter value

LuaTable(double, ...)rt_safe_eval (timepos_t, bool&)
boolset_interpolation (InterpolationStyle)

Sets the interpolation style of the automation data.

This will fail when asking for Logarithmic scale and min,max crosses 0 or Exponential scale with min != 0.

is
interpolation style

Returns true if style change was successful

unsigned longsize ()
voidthin (double)

Thin the number of events in this list.

The thinning factor corresponds to the area of a triangle computed between three points in the list (time-difference * value-difference). If the area is large, it indicates significant non-linearity between the points.

Time is measured in samples, value is usually normalized to 0..1.

During automation recording we thin the recorded points using this value. If a point is sufficiently co-linear with its neighbours (as defined by the area of the triangle formed by three of them), we will not include it in the list. The larger the value, the more points are excluded, so this effectively measures the amount of thinning to be done.

thinning_factor
area-size (default: 20)
voidtruncate_end (double)

Remove all events after the given time from this list.

last_coordinate
time in audio samples of the last event to keep
voidtruncate_start (double)

Remove all events up to to the given time from this list.

overall_length
overall length in audio samples
voidtruncate_end (timepos_t)
voidtruncate_start (timecnt_t)
Cast
AutomationListto_automationlist ()
@@ -962,19 +922,6 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C unsigned longsize () LuaTabletable () -

 ARDOUR:BeatsSamplesConverter

-

C‡: ARDOUR::BeatsSamplesConverter

-
-

Converter between quarter-note beats and samples. Takes distances in quarter-note beats or samples from some origin (supplied to the constructor in samples), and converts them to the opposite unit, taking tempo changes into account.

- - - - - - - - -
Constructor
ARDOUR.BeatsSamplesConverter (TempoMap, long)
Methods
Beatsfrom (long)

Convert B time to A time (A from B)

longto (Beats)

Convert A time to B time (A to B)

 ARDOUR:BufferSet

C‡: ARDOUR::BufferSet

@@ -1132,8 +1079,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C Methods voidcompute (Type, double, double, double)

setup filter, compute coefficients

t
filter type (LowPass, HighPass, etc)
freq
filter frequency
Q
filter quality
gain
filter gain
- voidconfigure (double, double, double, double, double) -

setup filter, set coefficients directly

+ voidconfigure (Biquad) floatdB_at_freq (float)

filter transfer function (filter response for spectrum visualization)

freq
frequency

Returns gain at given frequency in dB (clamped to -120..+120)

voidreset () @@ -1148,13 +1094,16 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C Constructor ℂARDOUR.DSP.Convolution (Session&, unsigned int, unsigned int) Methods - booladd_impdata (unsigned int, unsigned int, Readable, float, unsigned int, long, long, unsigned int) + booladd_impdata (unsigned int, unsigned int, Readable, float, unsigned int, long, long, unsigned int) + voidclear_impdata () unsigned intlatency () unsigned intn_inputs () unsigned intn_outputs () boolready () voidrestart () voidrun (BufferSet&, ChanMapping, ChanMapping, unsigned int, long) + voidrun_mono_buffered (FloatArray, unsigned int) + voidrun_mono_no_latency (FloatArray, unsigned int)

 ARDOUR:DSP:Convolver

C‡: ARDOUR::DSP::Convolver

@@ -1164,8 +1113,6 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C Constructor ℂARDOUR.DSP.Convolver (Session&, std::string, IRChannelConfig, IRSettings) Methods - voidrun_mono_buffered (FloatArray, unsigned int) - voidrun_mono_no_latency (FloatArray, unsigned int) voidrun_stereo_buffered (FloatArray, FloatArray, unsigned int) voidrun_stereo_no_latency (FloatArray, FloatArray, unsigned int) @@ -1174,13 +1121,16 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C Constructor ℂARDOUR.DSP.Convolution (Session&, unsigned int, unsigned int) Methods - booladd_impdata (unsigned int, unsigned int, Readable, float, unsigned int, long, long, unsigned int) + booladd_impdata (unsigned int, unsigned int, Readable, float, unsigned int, long, long, unsigned int) + voidclear_impdata () unsigned intlatency () unsigned intn_inputs () unsigned intn_outputs () boolready () voidrestart () voidrun (BufferSet&, ChanMapping, ChanMapping, unsigned int, long) + voidrun_mono_buffered (FloatArray, unsigned int) + voidrun_mono_no_latency (FloatArray, unsigned int)

 ARDOUR:DSP:DspShm

C‡: ARDOUR::DSP::DspShm

@@ -1249,7 +1199,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C Constructor ℂARDOUR.DSP.LTCReader (int, LTC_TV_STANDARD) Methods - LuaTable(long, ...)read (unsigned int&, unsigned int&, unsigned int&, unsigned int&) + LuaTable(long, ...)read (unsigned int&, unsigned int&, unsigned int&, unsigned int&, long&) voidwrite (FloatArray, long, long)

 ARDOUR:DSP:LowPass

@@ -1584,19 +1534,6 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C Statefulto_stateful () StatefulDestructibleto_statefuldestructible () -

 ARDOUR:DoubleBeatsSamplesConverter

-

C‡: ARDOUR::DoubleBeatsSamplesConverter

-
-

Converter between quarter-note beats and samples. Takes distances in quarter-note beats or samples from some origin (supplied to the constructor in samples), and converts them to the opposite unit, taking tempo changes into account.

- - - - - - - - -
Constructor
ARDOUR.DoubleBeatsSamplesConverter (TempoMap, long)
Methods
doublefrom (long)

Convert B time to A time (A from B)

longto (double)

Convert A time to B time (A to B)

 ARDOUR:EventList

C‡: std::list<Evoral::ControlEvent* >

@@ -1635,9 +1572,9 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C XrunPositionscaptured_xruns () boolempty () boolhas_been_analysed () - longlength (long) - longnatural_position () - longtimeline_position () + timepos_tlength () + timepos_tnatural_position () + timepos_ttimeline_position () longtimestamp () intuse_count () boolused () @@ -1704,8 +1641,8 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C voidset_automation_state (AutoState) voidset_value (double, GroupControlDisposition)

Set `internal' value

All derived classes must implement this.

Basic derived classes will ignore group_override but more sophisticated children, notably those that proxy the value setting logic via an object that is aware of group relationships between this control and others, will find it useful.

value
raw numeric value to set
group_override
if and how to propagate value to grouped controls
- voidstart_touch (double) - voidstop_touch (double) + voidstart_touch (timepos_t) + voidstop_touch (timepos_t) booltoggled () doubleupper () boolwritable () @@ -1716,6 +1653,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

Inherited from PBD:Controllable

+
Methods
voiddump_registry ()
std::stringname ()

Inherited from PBD:StatefulPtr

@@ -1995,30 +1933,29 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

Location on Timeline - abstract representation for Markers, Loop/Punch Ranges, CD-Markers etc.

- + + - + - + - - - - + + + - - - + +
Methods
long_end ()
timepos_t_end ()
Flagsflags ()
boolis_auto_loop ()
boolis_auto_punch ()
boolis_cd_marker ()
boolis_cue_marker ()
boolis_hidden ()
boolis_mark ()
boolis_range_marker ()
boolis_session_range ()
longlength ()
timecnt_tlength ()
voidlock ()
boollocked ()
boolmatches (Flags)
intmove_to (long, unsigned int)
intmove_to (timepos_t)
std::stringname ()
intset (long, long, bool, unsigned int)
intset_end (long, bool, bool, unsigned int)

Set end position.

force
true to force setting, even if the given new end is before the current start.
allow_beat_recompute
True to recompute BEAT end time from the new given end time.
s
New end.
intset_length (long, long, bool, unsigned int)
intset (timepos_t, timepos_t)
intset_end (timepos_t, bool)
intset_length (timepos_t, timepos_t)
voidset_name (std::string)

Set location name

intset_start (long, bool, bool, unsigned int)

Set start position.

s
New start.
force
true to force setting, even if the given new start is after the current end.
allow_beat_recompute
True to recompute BEAT start time from the new given start time.
longstart ()
intset_start (timepos_t, bool)
timepos_tstart ()
voidunlock ()

Inherited from PBD:Stateful

@@ -2051,20 +1988,17 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

A collection of session locations including unique dedicated locations (loop, punch, etc)

- - + - - - - + + + + - - - - - + + +
Methods
Locationadd_range (long, long)

Add new range to the collection

start
start position
end
end position

Returns New location object

Locationadd_range (timepos_t, timepos_t)
Locationauto_loop_location ()
Locationauto_punch_location ()
LuaTable(...)find_all_between (long, long, LocationList&, Flags)
longfirst_mark_after (long, bool)
Locationfirst_mark_at (long, long)
longfirst_mark_before (long, bool)
LuaTable(...)find_all_between (timepos_t, timepos_t, LocationList&, Flags)
timepos_tfirst_mark_after (timepos_t, bool)
Locationfirst_mark_at (timepos_t, timecnt_t)
timepos_tfirst_mark_before (timepos_t, bool)
LocationListlist ()
Locationmark_at (long, long)
LuaTable(...)marks_either_side (long, long&, long&)

Look for the `marks' (either locations which are marks, or start/end points of range markers) either side of a sample. Note that if sample is exactly on a `mark', that mark will not be considered for returning as before/after.

sample
Frame to look for.
before
Filled in with the position of the last `mark' before `sample' (or max_samplepos if none exists)
after
Filled in with the position of the next `mark' after `sample' (or max_samplepos if none exists)
Locationrange_starts_at (long, long, bool)

Return range with closest start pos to the where argument

pos
point to compare with start pos
slop
area around point to search for start pos
incl
(optional) look only for ranges that includes 'where' point

Returns Location object or nil

Locationmark_at (timepos_t, timecnt_t)
LuaTable(...)marks_either_side (timepos_t, timepos_t&, timepos_t&)
Locationrange_starts_at (timepos_t, timecnt_t, bool)
voidremove (Location)
Locationsession_range_location ()
@@ -2101,19 +2035,21 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

List all installed plugins

longmonotonic_time () Processornew_luaproc (Session, std::string) -

create a new Lua Processor (Plugin)

s
Session Handle
name
Identifier or Name of the Processor

Returns Processor object (may be nil)

- NotePtrnew_noteptr (unsigned char, Beats, Beats, unsigned char, unsigned char) + Processornew_luaproc_with_time_domain (Session, std::string, TimeDomain) +

create a new Lua Processor (Plugin)

s
Session Handle
name
Identifier or Name of the Processor
td
Time domain (audio or beats) for any automation data

Returns Processor object (may be nil)

+ NotePtrnew_noteptr (unsigned char, Beats, Beats, unsigned char, unsigned char) Processornew_plugin (Session, std::string, PluginType, std::string) -

create a new Plugin Instance

s
Session Handle
name
Plugin Name, ID or URI
type
Plugin Type
preset
name of plugin-preset to load, leave empty "" to not load any preset after instantiation

Returns Processor or nil

PluginInfonew_plugin_info (std::string, PluginType)

search a Plugin

name
Plugin Name, ID or URI
type
Plugin Type

Returns PluginInfo or nil if not found

+ Processornew_plugin_with_time_domain (Session, std::string, PluginType, TimeDomain, std::string) +

create a new Plugin Instance

s
Session Handle
name
Plugin Name, ID or URI
type
Plugin Type
td
Time domain for any automation data
preset
name of plugin-preset to load, leave empty "" to not load any preset after instantiation

Returns Processor or nil

Processornew_send (Session, Route, Processor)

add a new [external] Send to the given Route

s
Session Handle
r
Route to add Send to
p
add send before given processor (or nil_processor to add at the end)
Processornil_proc () NotePtrListnote_list (MidiModel) std::stringpath_get_basename (std::string) ...plugin_automation (--lua--) -

A convenience function to get a Automation Lists and ParamaterDescriptor for a given plugin control.

This is equivalent to the following lua code

 function (processor, param_id)
+

A convenience function to get a Automation Lists and ParameterDescriptor for a given plugin control.

This is equivalent to the following lua code

 function (processor, param_id)
   local plugininsert = processor:to_insert ()
   local plugin = plugininsert:plugin(0)
   local _, t = plugin:get_parameter_descriptor(param_id, ARDOUR.ParameterDescriptor ())
@@ -2121,7 +2057,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C
   local ac = pi:automation_control (ctrl, false)
   local acl = ac:alist()
   return ac:alist(), ac:to_ctrl():list(), t[2]
- end

Example usage: get the third input parameter of first plugin on the given route (Ardour starts counting at zero).

 local al, cl, pd = ARDOUR.LuaAPI.plugin_automation (route:nth_plugin (0), 3)

Returns 3 parameters: AutomationList, ControlList, ParamaterDescriptor

+ end

Example usage: get the third input parameter of first plugin on the given route (Ardour starts counting at zero).

 local al, cl, pd = ARDOUR.LuaAPI.plugin_automation (route:nth_plugin (0), 3)

Returns 3 parameters: AutomationList, ControlList, ParameterDescriptor

boolreset_processor_to_default (Processor)

reset a processor to its default values (only works for plugins )

This is a wrapper which looks up the Processor by plugin-insert.

proc
Plugin-Insert

Returns true on success, false when the processor is not a plugin

...sample_to_timecode (--lua--) @@ -2147,7 +2083,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C Methods unsigned intn_channels () AudioRegionprocess (Lua-Function) - Readablereadable () + Readablereadable () longreadable_length () boolset_mapping (Lua-Function) boolset_strech_and_pitch (double, double) @@ -2159,8 +2095,8 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C Constructor ℂARDOUR.LuaAPI.Vamp (std::string, float) Methods - intanalyze (Readable, unsigned int, Lua-Function) -

high-level abstraction to process a single channel of the given Readable.

If the plugin is not yet initialized, initialize() is called.

if fn is not nil, it is called with the immediate Vamp::Plugin::Features on every process call.

r
readable
channel
channel to process
cb
lua callback function or nil

Returns 0 on success

+ intanalyze (Readable, unsigned int, Lua-Function) +

high-level abstraction to process a single channel of the given AudioReadable.

If the plugin is not yet initialized, initialize() is called.

if fn is not nil, it is called with the immediate Vamp::Plugin::Features on every process call.

r
readable
channel
channel to process
cb
lua callback function or nil

Returns 0 on success

boolinitialize ()

initialize the plugin for use with analyze().

This is equivalent to plugin():initialise (1, ssiz, bsiz) and prepares a plugin for analyze. (by preferred step and block sizes are used. if the plugin does not specify them or they're larger than 8K, both are set to 1024)

Manual initialization is only required to set plugin-parameters which depend on prior initialization of the plugin.

 vamp:reset ()
  vamp:initialize ()
@@ -2171,7 +2107,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C
  FeatureSetprocess (FloatArrayVector, RealTime)
 

process given array of audio-samples.

This is a lua-binding for vamp:plugin():process ()

d
audio-data, the vector must match the configured channel count and hold a complete buffer for every channel as set during plugin():initialise()
rt
timestamp matching the provided buffer.

Returns features extracted from that data (if the plugin is causal)

voidreset () -

call plugin():reset() and clear intialization flag

+

call plugin():reset() and clear initialization flag

 ARDOUR:LuaOSC:Address

C‡: ARDOUR::LuaOSC::Address

@@ -2220,6 +2156,9 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C std::stringparameter_label (unsigned int) PresetRecordpreset_by_label (std::string) PresetRecordpreset_by_uri (std::string) + voidremove_preset (std::string) + PresetRecordsave_preset (std::string) +

Create a new plugin-preset from the current state

name
label to use for new preset (needs to be unique)

Returns PresetRecord with empty URI on failure

std::stringunique_id () Cast LuaProcto_luaproc () @@ -2256,59 +2195,6 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C unsigned longsize () LuaTabletable () -

 ARDOUR:Meter

-

C‡: ARDOUR::Meter

-
-

Meter, or time signature (beats per bar, and which note type is a beat).

- - - - - - - - -
Constructor
ARDOUR.Meter (double, double)
Methods
doubledivisions_per_bar ()
doublenote_divisor ()
doublesamples_per_bar (Tempo, long)
doublesamples_per_grid (Tempo, long)
-

 ARDOUR:MeterSection

-

C‡: ARDOUR::MeterSection

-

is-a: ARDOUR:MetricSection

-
-

A section of timeline with a certain Meter.

- - - - - - - -
Methods
BBT_TIMEbbt ()
doublebeat ()
voidset_beat (double)
Cast
Meterto_meter ()
-

Inherited from ARDOUR:MetricSection

- - - - - - - - - - -
Methods
boolinitial ()
boolis_tempo ()
doubleminute ()
doubleminute_at_sample (long)
doublepulse ()
longsample ()
longsample_at_minute (double)
voidset_pulse (double)
-

 ARDOUR:MetricSection

-

C‡: ARDOUR::MetricSection

-
-

A section of timeline with a certain Tempo or Meter.

- - - - - - - - - - -
Methods
boolinitial ()
boolis_tempo ()
doubleminute ()
doubleminute_at_sample (long)
doublepulse ()
longsample ()
longsample_at_minute (double)
voidset_pulse (double)

 ARDOUR:MidiBuffer

C‡: ARDOUR::MidiBuffer

@@ -2334,9 +2220,10 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C + - +
Methods
voidapply_command (Session, Command)
voidapply_diff_command_as_commit (Session, Command)
boolisnil ()
NoteDiffCommandnew_note_diff_command (std::string)

Start a new NoteDiff command.

This has no side-effects on the model or Session, the returned command can be held on to for as long as the caller wishes, or discarded without formality, until apply_command is called and ownership is taken.

Start a new NoteDiff command.

This has no side-effects on the model or Session, the returned command can be held on to for as long as the caller wishes, or discarded without formality, until apply_diff_command_* is called and ownership is taken.

Inherited from ARDOUR:AutomatableSequence

@@ -2409,21 +2296,18 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

Inherited from ARDOUR:Playlist

- - + - - + + - - - - - + + + - - - + + + @@ -2433,17 +2317,16 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C - - - - - + + + + - - - + + + @@ -2507,13 +2390,11 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

A named object associated with a Session. Objects derived from this class are expected to be destroyed before the session calls drop_references().

Methods
voidadd_region (Region, long, float, bool, int, double, bool)

Note: this calls set_layer (..., DBL_MAX) so it will reset the layering index of region

voidadd_region (Region, timepos_t, float, bool)
Regioncombine (RegionList)
unsigned intcount_regions_at (long)
Playlistcut (AudioRangeList&, bool)
unsigned intcount_regions_at (timepos_t)
Playlistcut (TimelineRangeList&, bool)
DataTypedata_type ()
voidduplicate (Region, long, long, float)
gap
from the beginning of the region to the next beginning
voidduplicate_range (AudioRange&, float)
voidduplicate_until (Region, long, long, long)
gap
from the beginning of the region to the next beginning
end
the first sample that does _not_ contain a duplicated sample
voidduplicate (Region, timepos_t&, timecnt_t, float)
voidduplicate_range (TimelineRange&, float)
voidduplicate_until (Region, timepos_t&, timecnt_t, timepos_t)
boolempty ()
Regionfind_next_region (long, RegionPoint, int)
longfind_next_region_boundary (long, int)
longfind_next_transient (long, int)
Regionfind_next_region (timepos_t, RegionPoint, int)
timepos_tfind_next_region_boundary (timepos_t, int)
longfind_next_transient (timepos_t, int)
IDget_orig_track_id ()
boolhidden ()
voidlower_region (Region)
voidraise_region_to_top (Region)
Regionregion_by_id (ID)
RegionListPtrregion_list ()
RegionListPtrregions_at (long)
RegionListPtrregions_touched (long, long)
start
Range start.
end
Range end.

Returns regions which have some part within this range.

RegionListPtrregions_with_end_within (Range)
RegionListPtrregions_with_start_within (Range)
RegionListPtrregions_at (timepos_t)
RegionListPtrregions_touched (timepos_t, timepos_t)
RegionListPtrregions_with_end_within (Range)
RegionListPtrregions_with_start_within (Range)
voidremove_region (Region)
boolset_name (std::string)
boolshared ()
voidsplit_region (Region, MusicSample)
Regiontop_region_at (long)
Regiontop_unmuted_region_at (long)
voidsplit_region (Region, timepos_t)
Regiontop_region_at (timepos_t)
Regiontop_unmuted_region_at (timepos_t)
voiduncombine (Region)
boolused ()
Cast
- + - -
Methods
booldo_export (std::string)
booldo_export (std::string)

Export the MIDI data of the MidiRegion to a new MIDI file (SMF).

boolisnil ()
doublelength_beats ()
MidiSourcemidi_source (unsigned int)
MidiModelmodel ()
doublestart_beats ()

Inherited from ARDOUR:Region

@@ -2525,9 +2406,9 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C - - - + + + @@ -2535,58 +2416,53 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C - + - + - - + - + - - - - + + - + - - - + + - + - - + + - - - + + + -
voidcaptured_xruns (XrunPositions&, bool)
voidclear_sync_position ()
Controlcontrol (Parameter, bool)
boolcovers (long)
voidcut_end (long, int)
voidcut_front (long, int)
boolcovers (timepos_t)
voidcut_end (timepos_t)
voidcut_front (timepos_t)
DataTypedata_type ()
boolexternal ()
boolhas_transients ()
boolimport ()
boolis_compound ()
unsigned intlayer ()
longlength ()
timecnt_tlength ()
boollocked ()
voidlower ()
voidlower_to_bottom ()
StringVectormaster_source_names ()
SourceListmaster_sources ()
voidmove_start (long, int)
voidmove_start (timecnt_t)
voidmove_to_natural_position ()
boolmuted ()
unsigned intn_channels ()
voidnudge_position (long)
voidnudge_position (timecnt_t)
boolopaque ()
Playlistplaylist ()
longposition ()
timepos_tposition ()

How the region parameters play together:

POSITION: first sample of the region along the timeline START: first sample of the region within its source(s) LENGTH: number of samples the region represents

boolposition_locked ()
doublequarter_note ()
voidraise ()
voidraise_to_top ()
voidset_hidden (bool)
voidset_initial_position (long)

A gui may need to create a region, then place it in an initial position determined by the user. When this takes place within one gui operation, we have to reset _last_position to prevent an implied move.

voidset_length (long, int)
voidset_initial_position (timepos_t)
voidset_length (timecnt_t)
voidset_locked (bool)
voidset_muted (bool)
boolset_name (std::string)

Note: changing the name of a Region does not constitute an edit

voidset_opaque (bool)
voidset_position (long, int)
voidset_position (timepos_t)
voidset_position_locked (bool)
voidset_start (long)
voidset_sync_position (long)

Set the region's sync point.

absolute_pos
Session time.
voidset_start (timepos_t)
voidset_sync_position (timepos_t)
voidset_video_locked (bool)
floatshift ()
Sourcesource (unsigned int)
longstart ()
timepos_tstart ()
floatstretch ()
boolsync_marked ()
LuaTable(long, ...)sync_offset (int&)
longsync_position ()
LuaTable(timecnt_t, ...)sync_offset (int&)
timepos_tsync_position ()

Returns Sync position in session time

Int64Listtransients ()
voidtrim_end (long, int)
voidtrim_front (long, int)
voidtrim_to (long, long, int)
voidtrim_end (timepos_t)
voidtrim_front (timepos_t)
voidtrim_to (timepos_t, timecnt_t)
boolvideo_locked ()
boolwhole_file ()
Cast
AudioRegionto_audioregion ()
MidiRegionto_midiregion ()
Readableto_readable ()

Inherited from ARDOUR:SessionObjectPtr

@@ -2603,9 +2479,9 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

Source for MIDI data

- + - +
Methods
boolempty ()
boolempty ()
boolisnil ()
longlength (long)
timepos_tlength ()
MidiModelmodel ()

Inherited from ARDOUR:Source

@@ -2615,8 +2491,8 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolcan_be_analysed () XrunPositionscaptured_xruns () boolhas_been_analysed () - longnatural_position () - longtimeline_position () + timepos_tnatural_position () + timepos_ttimeline_position () longtimestamp () intuse_count () boolused () @@ -2641,11 +2517,23 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

A track is an route (bus) with a recordable diskstream and related objects relevant to recording, playback and editing.

Specifically a track has a playlist object that describes material to be played from disk, and modifies that object during recording and editing.

+ + + + + + + + + +
Methods
unsigned shortget_capture_channel_mask ()
ChannelModeget_capture_channel_mode ()
ChannelModeget_playback_channel_mask ()
ChannelModeget_playback_channel_mode ()
boolinput_active ()
boolisnil ()
voidset_capture_channel_mask (unsigned short)
voidset_capture_channel_mode (ChannelMode, unsigned short)
voidset_input_active (bool)
voidset_playback_channel_mask (unsigned short)
voidset_playback_channel_mode (ChannelMode, unsigned short)
boolwrite_immediate_event (EventType, unsigned long, unsigned char*)

Inherited from ARDOUR:Track

+ + @@ -2801,6 +2689,20 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C
Constructor
ARDOUR.Track ()
Methods
Regionbounce (InterThreadInfo&, std::string)

bounce track from session start to session end to new region

itt
asynchronous progress report and cancel

Returns a new audio region (or nil in case of error)

LuaTabletable ()
voidunique ()
+

 ARDOUR:MixerScene

+

C‡: boost::shared_ptr< ARDOUR::MixerScene >, boost::weak_ptr< ARDOUR::MixerScene >

+
+

Base class for objects with saveable and undoable state

+ + + + + + + + + +
Methods
boolapply ()
voidclear ()
boolempty ()
boolisnil ()
std::stringname ()
boolset_name (std::string)
voidsnapshot ()

 ARDOUR:MonitorControl

C‡: boost::shared_ptr< ARDOUR::MonitorControl >, boost::weak_ptr< ARDOUR::MonitorControl >

is-a: ARDOUR:SlavableAutomationControl

@@ -2835,8 +2737,8 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C voidset_automation_state (AutoState) voidset_value (double, GroupControlDisposition)

Set `internal' value

All derived classes must implement this.

Basic derived classes will ignore group_override but more sophisticated children, notably those that proxy the value setting logic via an object that is aware of group relationships between this control and others, will find it useful.

value
raw numeric value to set
group_override
if and how to propagate value to grouped controls
- voidstart_touch (double) - voidstop_touch (double) + voidstart_touch (timepos_t) + voidstop_touch (timepos_t) booltoggled () doubleupper () boolwritable () @@ -2847,6 +2749,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

Inherited from PBD:Controllable

+
Methods
voiddump_registry ()
std::stringname ()

Inherited from PBD:StatefulPtr

@@ -2935,18 +2838,6 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C Statefulto_stateful () StatefulDestructibleto_statefuldestructible () -

 ARDOUR:MusicSample

-

C‡: ARDOUR::MusicSample

-
- - - - - - - - -
Constructor
ARDOUR.MusicSample (long, int)
Methods
voidset (long, int)
Data Members
intdivision
longsample

 ARDOUR:MuteControl

C‡: boost::shared_ptr< ARDOUR::MuteControl >, boost::weak_ptr< ARDOUR::MuteControl >

is-a: ARDOUR:SlavableAutomationControl

@@ -2982,8 +2873,8 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C voidset_automation_state (AutoState) voidset_value (double, GroupControlDisposition)

Set `internal' value

All derived classes must implement this.

Basic derived classes will ignore group_override but more sophisticated children, notably those that proxy the value setting logic via an object that is aware of group relationships between this control and others, will find it useful.

value
raw numeric value to set
group_override
if and how to propagate value to grouped controls
- voidstart_touch (double) - voidstop_touch (double) + voidstart_touch (timepos_t) + voidstop_touch (timepos_t) booltoggled () doubleupper () boolwritable () @@ -2994,6 +2885,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

Inherited from PBD:Controllable

+
Methods
voiddump_registry ()
std::stringname ()

Inherited from PBD:StatefulPtr

@@ -3011,7 +2903,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C Constructor ℂARDOUR.NotePtrList () Methods - LuaTableadd (LuaTable {Beats}) + LuaTableadd (LuaTable {Beats}) NotePtrback () boolempty () NotePtrfront () @@ -3090,6 +2982,8 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

Minimum value (in Hz, for frequencies)

floatnormal

Default value

+ unsigned intrangesteps +

number of steps, [min,max] (inclusive). <= 1 means continuous. == 2 only min, max. For integer controls this is usually (1 + max - min)

booltoggled

True iff parameter is boolean

floatupper @@ -3189,8 +3083,8 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C voidset_automation_state (AutoState) voidset_value (double, GroupControlDisposition)

Set `internal' value

All derived classes must implement this.

Basic derived classes will ignore group_override but more sophisticated children, notably those that proxy the value setting logic via an object that is aware of group relationships between this control and others, will find it useful.

value
raw numeric value to set
group_override
if and how to propagate value to grouped controls
- voidstart_touch (double) - voidstop_touch (double) + voidstart_touch (timepos_t) + voidstop_touch (timepos_t) booltoggled () doubleupper () boolwritable () @@ -3201,6 +3095,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

Inherited from PBD:Controllable

+
Methods
voiddump_registry ()
std::stringname ()

Inherited from PBD:StatefulPtr

@@ -3218,21 +3113,18 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

A named object associated with a Session. Objects derived from this class are expected to be destroyed before the session calls drop_references().

- - + - - + + - - - - - + + + - - - + + + @@ -3243,17 +3135,16 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C - - - - - + + + + - - - + + + @@ -3315,6 +3206,9 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C + + + @@ -3359,8 +3253,8 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C - - + + @@ -3371,6 +3265,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

Inherited from PBD:Controllable

Methods
voidadd_region (Region, long, float, bool, int, double, bool)

Note: this calls set_layer (..., DBL_MAX) so it will reset the layering index of region

voidadd_region (Region, timepos_t, float, bool)
Regioncombine (RegionList)
unsigned intcount_regions_at (long)
Playlistcut (AudioRangeList&, bool)
unsigned intcount_regions_at (timepos_t)
Playlistcut (TimelineRangeList&, bool)
DataTypedata_type ()
voidduplicate (Region, long, long, float)
gap
from the beginning of the region to the next beginning
voidduplicate_range (AudioRange&, float)
voidduplicate_until (Region, long, long, long)
gap
from the beginning of the region to the next beginning
end
the first sample that does _not_ contain a duplicated sample
voidduplicate (Region, timepos_t&, timecnt_t, float)
voidduplicate_range (TimelineRange&, float)
voidduplicate_until (Region, timepos_t&, timecnt_t, timepos_t)
boolempty ()
Regionfind_next_region (long, RegionPoint, int)
longfind_next_region_boundary (long, int)
longfind_next_transient (long, int)
Regionfind_next_region (timepos_t, RegionPoint, int)
timepos_tfind_next_region_boundary (timepos_t, int)
longfind_next_transient (timepos_t, int)
IDget_orig_track_id ()
boolhidden ()
boolisnil ()
voidraise_region_to_top (Region)
Regionregion_by_id (ID)
RegionListPtrregion_list ()
RegionListPtrregions_at (long)
RegionListPtrregions_touched (long, long)
start
Range start.
end
Range end.

Returns regions which have some part within this range.

RegionListPtrregions_with_end_within (Range)
RegionListPtrregions_with_start_within (Range)
RegionListPtrregions_at (timepos_t)
RegionListPtrregions_touched (timepos_t, timepos_t)
RegionListPtrregions_with_end_within (Range)
RegionListPtrregions_with_start_within (Range)
voidremove_region (Region)
boolset_name (std::string)
boolshared ()
voidsplit_region (Region, MusicSample)
Regiontop_region_at (long)
Regiontop_unmuted_region_at (long)
voidsplit_region (Region, timepos_t)
Regiontop_region_at (timepos_t)
Regiontop_unmuted_region_at (timepos_t)
voiduncombine (Region)
boolused ()
Cast
std::stringparameter_label (unsigned int)
PresetRecordpreset_by_label (std::string)
PresetRecordpreset_by_uri (std::string)
voidremove_preset (std::string)
PresetRecordsave_preset (std::string)

Create a new plugin-preset from the current state

name
label to use for new preset (needs to be unique)

Returns PresetRecord with empty URI on failure

std::stringunique_id ()
Cast
LuaProcto_luaproc ()
voidset_automation_state (AutoState)
voidset_value (double, GroupControlDisposition)

Set `internal' value

All derived classes must implement this.

Basic derived classes will ignore group_override but more sophisticated children, notably those that proxy the value setting logic via an object that is aware of group relationships between this control and others, will find it useful.

value
raw numeric value to set
group_override
if and how to propagate value to grouped controls
voidstart_touch (double)
voidstop_touch (double)
voidstart_touch (timepos_t)
voidstop_touch (timepos_t)
booltoggled ()
doubleupper ()
boolwritable ()
+
Methods
voiddump_registry ()
std::stringname ()

Inherited from PBD:StatefulPtr

@@ -3791,10 +3686,22 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

C‡: PBD::PropertyDescriptor<float>

This class object is only used indirectly as return-value and function-parameter. It provides no methods by itself.

-

 ARDOUR:Properties:SampleposProperty

+

 ARDOUR:Properties:SamplePosProperty

C‡: PBD::PropertyDescriptor<long>

This class object is only used indirectly as return-value and function-parameter. It provides no methods by itself.

+

 ARDOUR:Properties:StringProperty

+

C‡: PBD::PropertyDescriptor<std::string >

+
+

This class object is only used indirectly as return-value and function-parameter. It provides no methods by itself.

+

 ARDOUR:Properties:TimeCntProperty

+

C‡: PBD::PropertyDescriptor<Temporal::timecnt_t>

+
+

This class object is only used indirectly as return-value and function-parameter. It provides no methods by itself.

+

 ARDOUR:Properties:TimePosProperty

+

C‡: PBD::PropertyDescriptor<Temporal::timepos_t>

+
+

This class object is only used indirectly as return-value and function-parameter. It provides no methods by itself.

 ARDOUR:PropertyChange

C‡: PBD::PropertyChange

@@ -3803,7 +3710,10 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C Methods boolcontainsBool (BoolProperty) boolcontainsFloat (FloatProperty) - boolcontainsSamplePos (SampleposProperty) + boolcontainsSamplePos (SamplePosProperty) + boolcontainsString (StringProperty) + boolcontainsTimeCnt (TimeCntProperty) + boolcontainsTimePos (TimePosProperty)

 ARDOUR:PropertyList

C‡: PBD::PropertyList

@@ -3840,13 +3750,16 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolget_click_record_only () std::stringget_click_sound () boolget_clicking () + std::stringget_clip_library_dir () boolget_conceal_lv1_if_lv2_exists () boolget_conceal_vst2_if_vst3_exists () boolget_copy_demo_sessions () intget_cpu_dma_latency () boolget_create_xrun_marker () + TimeDomainget_default_automation_time_domain () FadeShapeget_default_fade_shape () std::stringget_default_session_parent_dir () + std::stringget_default_trigger_input_port () DenormalModelget_denormal_model () boolget_denormal_protection () boolget_disable_disarm_during_roll () @@ -3859,13 +3772,14 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C floatget_export_silence_threshold () unsigned intget_feedback_interval_ms () boolget_first_midi_bank_is_zero () - std::stringget_freesound_download_dir () + boolget_group_override_inverts () boolget_hide_dummy_backend () boolget_hiding_groups_deactivates_groups () intget_history_depth () intget_initial_program_change () AutoConnectOptionget_input_auto_connect () intget_inter_scene_gap_samples () + boolget_interview_editing () boolget_latched_record_enable () LayerModelget_layer_model () unsigned intget_limit_n_automatables () @@ -3916,6 +3830,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C std::stringget_plugin_path_vst3 () unsigned intget_plugin_scan_timeout () boolget_plugins_stop_with_transport () + unsigned intget_port_resampler_quality () longget_postroll () longget_preroll () floatget_preroll_seconds () @@ -3931,8 +3846,11 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C RegionSelectionAfterSplitget_region_selection_after_split () boolget_replicate_missing_region_channels () boolget_reset_default_speed_on_stop () + std::stringget_resource_index_url () boolget_rewind_ffwd_like_tape_decks () + RippleModeget_ripple_mode () boolget_run_all_transport_masters_always () + std::stringget_sample_lib_path () boolget_save_history () intget_saved_history_depth () boolget_send_ltc () @@ -3940,7 +3858,6 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolget_send_mmc () boolget_send_mtc () boolget_show_solo_mutes () - boolget_show_video_export_info () boolget_show_video_server_dialog () boolget_show_vst3_micro_edit_inline () floatget_shuttle_max_speed () @@ -4005,13 +3922,16 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolset_click_record_only (bool) boolset_click_sound (std::string) boolset_clicking (bool) + boolset_clip_library_dir (std::string) boolset_conceal_lv1_if_lv2_exists (bool) boolset_conceal_vst2_if_vst3_exists (bool) boolset_copy_demo_sessions (bool) boolset_cpu_dma_latency (int) boolset_create_xrun_marker (bool) + boolset_default_automation_time_domain (TimeDomain) boolset_default_fade_shape (FadeShape) boolset_default_session_parent_dir (std::string) + boolset_default_trigger_input_port (std::string) boolset_denormal_model (DenormalModel) boolset_denormal_protection (bool) boolset_disable_disarm_during_roll (bool) @@ -4024,13 +3944,14 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolset_export_silence_threshold (float) boolset_feedback_interval_ms (unsigned int) boolset_first_midi_bank_is_zero (bool) - boolset_freesound_download_dir (std::string) + boolset_group_override_inverts (bool) boolset_hide_dummy_backend (bool) boolset_hiding_groups_deactivates_groups (bool) boolset_history_depth (int) boolset_initial_program_change (int) boolset_input_auto_connect (AutoConnectOption) boolset_inter_scene_gap_samples (int) + boolset_interview_editing (bool) boolset_latched_record_enable (bool) boolset_layer_model (LayerModel) boolset_limit_n_automatables (unsigned int) @@ -4081,6 +4002,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolset_plugin_path_vst3 (std::string) boolset_plugin_scan_timeout (unsigned int) boolset_plugins_stop_with_transport (bool) + boolset_port_resampler_quality (unsigned int) boolset_postroll (long) boolset_preroll (long) boolset_preroll_seconds (float) @@ -4096,8 +4018,11 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolset_region_selection_after_split (RegionSelectionAfterSplit) boolset_replicate_missing_region_channels (bool) boolset_reset_default_speed_on_stop (bool) + boolset_resource_index_url (std::string) boolset_rewind_ffwd_like_tape_decks (bool) + boolset_ripple_mode (RippleMode) boolset_run_all_transport_masters_always (bool) + boolset_sample_lib_path (std::string) boolset_save_history (bool) boolset_saved_history_depth (int) boolset_send_ltc (bool) @@ -4105,7 +4030,6 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolset_send_mmc (bool) boolset_send_mtc (bool) boolset_show_solo_mutes (bool) - boolset_show_video_export_info (bool) boolset_show_video_server_dialog (bool) boolset_show_vst3_micro_edit_inline (bool) boolset_shuttle_max_speed (float) @@ -4171,13 +4095,16 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolclick_record_only std::stringclick_sound boolclicking + std::stringclip_library_dir boolconceal_lv1_if_lv2_exists boolconceal_vst2_if_vst3_exists boolcopy_demo_sessions intcpu_dma_latency boolcreate_xrun_marker + Temporal.TimeDomaindefault_automation_time_domain ARDOUR.FadeShapedefault_fade_shape std::stringdefault_session_parent_dir + std::stringdefault_trigger_input_port ARDOUR.DenormalModeldenormal_model booldenormal_protection booldisable_disarm_during_roll @@ -4190,13 +4117,14 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C floatexport_silence_threshold unsigned intfeedback_interval_ms boolfirst_midi_bank_is_zero - std::stringfreesound_download_dir + boolgroup_override_inverts boolhide_dummy_backend boolhiding_groups_deactivates_groups inthistory_depth intinitial_program_change ARDOUR.AutoConnectOptioninput_auto_connect intinter_scene_gap_samples + boolinterview_editing boollatched_record_enable ARDOUR.LayerModellayer_model unsigned intlimit_n_automatables @@ -4247,6 +4175,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C std::stringplugin_path_vst3 unsigned intplugin_scan_timeout boolplugins_stop_with_transport + unsigned intport_resampler_quality longpostroll longpreroll floatpreroll_seconds @@ -4262,8 +4191,11 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C ARDOUR.RegionSelectionAfterSplitregion_selection_after_split boolreplicate_missing_region_channels boolreset_default_speed_on_stop + std::stringresource_index_url boolrewind_ffwd_like_tape_decks + ARDOUR.RippleModeripple_mode boolrun_all_transport_masters_always + std::stringsample_lib_path boolsave_history intsaved_history_depth boolsend_ltc @@ -4271,7 +4203,6 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolsend_mmc boolsend_mtc boolshow_solo_mutes - boolshow_video_export_info boolshow_video_server_dialog boolshow_vst3_micro_edit_inline floatshuttle_max_speed @@ -4354,18 +4285,18 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C OwnedPropertyListproperties ()

 ARDOUR:Readable

-

C‡: boost::shared_ptr< ARDOUR::Readable >, boost::weak_ptr< ARDOUR::Readable >

+

C‡: boost::shared_ptr< ARDOUR::AudioReadable >, boost::weak_ptr< ARDOUR::AudioReadable >

- - - - + + + +
Methods
boolisnil ()
ReadableListload (Session&, std::string)
unsigned intn_channels ()
longread (FloatArray, long, long, int)
longreadable_length ()
ReadableListload (Session&, std::string)
unsigned intn_channels ()
longread (FloatArray, long, long, int)
longreadable_length ()

 ARDOUR:ReadableList

-

C‡: std::vector<boost::shared_ptr<ARDOUR::Readable> >

+

C‡: std::vector<boost::shared_ptr<ARDOUR::AudioReadable> >

@@ -4373,12 +4304,12 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C - - - + + + - - + +
Constructor
ARDOUR.ReadableList ()
Methods
LuaTableadd (LuaTable {Readable})
Readableat (unsigned long)
voidclear ()
boolempty ()
Readableat (unsigned long)
voidclear ()
boolempty ()
LuaIteriter ()
voidpush_back (Readable)
unsigned longsize ()
voidpush_back (Readable)
unsigned longsize ()
LuaTabletable ()
...to_array (--lua--)
@@ -4396,9 +4327,9 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C voidcaptured_xruns (XrunPositions&, bool) voidclear_sync_position () Controlcontrol (Parameter, bool) - boolcovers (long) - voidcut_end (long, int) - voidcut_front (long, int) + boolcovers (timepos_t) + voidcut_end (timepos_t) + voidcut_front (timepos_t) DataTypedata_type () boolexternal () boolhas_transients () @@ -4407,58 +4338,53 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolis_compound () boolisnil () unsigned intlayer () - longlength () + timecnt_tlength () boollocked () voidlower () voidlower_to_bottom () StringVectormaster_source_names () SourceListmaster_sources () - voidmove_start (long, int) + voidmove_start (timecnt_t) voidmove_to_natural_position () boolmuted () - unsigned intn_channels () - voidnudge_position (long) + voidnudge_position (timecnt_t) boolopaque () Playlistplaylist () - longposition () + timepos_tposition ()

How the region parameters play together:

POSITION: first sample of the region along the timeline START: first sample of the region within its source(s) LENGTH: number of samples the region represents

boolposition_locked () - doublequarter_note () voidraise () voidraise_to_top () voidset_hidden (bool) - voidset_initial_position (long) -

A gui may need to create a region, then place it in an initial position determined by the user. When this takes place within one gui operation, we have to reset _last_position to prevent an implied move.

- voidset_length (long, int) + voidset_initial_position (timepos_t) + voidset_length (timecnt_t) voidset_locked (bool) voidset_muted (bool) boolset_name (std::string)

Note: changing the name of a Region does not constitute an edit

voidset_opaque (bool) - voidset_position (long, int) + voidset_position (timepos_t) voidset_position_locked (bool) - voidset_start (long) - voidset_sync_position (long) -

Set the region's sync point.

absolute_pos
Session time.
+ voidset_start (timepos_t) + voidset_sync_position (timepos_t) voidset_video_locked (bool) floatshift () Sourcesource (unsigned int) - longstart () + timepos_tstart () floatstretch () boolsync_marked () - LuaTable(long, ...)sync_offset (int&) - longsync_position () + LuaTable(timecnt_t, ...)sync_offset (int&) + timepos_tsync_position ()

Returns Sync position in session time

Int64Listtransients () - voidtrim_end (long, int) - voidtrim_front (long, int) - voidtrim_to (long, long, int) + voidtrim_end (timepos_t) + voidtrim_front (timepos_t) + voidtrim_to (timepos_t, timecnt_t) boolvideo_locked () boolwhole_file () Cast AudioRegionto_audioregion () MidiRegionto_midiregion () - Readableto_readable ()

Inherited from ARDOUR:SessionObjectPtr

@@ -4911,7 +4837,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C
- + @@ -4922,6 +4848,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C + @@ -4929,7 +4856,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C - + @@ -4952,6 +4879,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C + @@ -4960,13 +4888,15 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C - + - + + + @@ -4975,7 +4905,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C - + @@ -5002,8 +4932,8 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C + - @@ -5023,6 +4953,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C +
Methods
boolabort_empty_reversible_command ()

Abort reversible commend IFF no undo changes have been collected.

Returns true if undo operation was aborted.

Abort reversible command IFF no undo changes have been collected.

Returns true if undo operation was aborted.

voidabort_reversible_command ()

abort an open undo command This must only be called after begin_reversible_command ()

boolactively_recording ()
intadd_master_bus (ChanCount)
StatefulDiffCommandadd_stateful_diff_command (StatefulDestructiblePtr)

create an StatefulDiffCommand from the given object and add it to the stack.

This function must only be called after begin_reversible_command. Failing to do so may lead to a crash.

sfd
the object to diff

Returns the allocated StatefulDiffCommand (already added via add_command)

boolapply_nth_mixer_scene (unsigned long)
voidbegin_reversible_command (std::string)

begin collecting undo information

This call must always be followed by either begin_reversible_command() or commit_reversible_command()

cmd_name
human readable name for the undo operation
BundleListPtrbundles ()
SessionConfigurationcfg ()
voidclear_all_solo_state (RouteListPtr)
boolcollected_undo_commands ()

Test if any undo commands were added since the call to begin_reversible_command ()

This is is useful to determine if an undoable action was performed before adding additional information (e.g. selection changes) to the undo transaction.

Returns true if undo operation is valid but empty

Test if any undo commands were added since the call to begin_reversible_command ()

This is useful to determine if an undoable action was performed before adding additional information (e.g. selection changes) to the undo transaction.

Returns true if undo operation is valid but empty

voidcommit_reversible_command (Command)

finalize an undo command and commit pending transactions

This must only be called after begin_reversible_command ()

cmd
(additional) command to add
Controllablecontrollable_by_id (ID)
unsigned intget_xrun_count ()
voidgoto_end ()
voidgoto_start (bool)
longio_latency ()
longlast_transport_start ()
boollistening ()
Locationslocations ()
Routemonitor_out ()
std::stringname ()
RouteListnew_audio_route (int, int, RouteGroup, unsigned int, std::string, Flag, unsigned int)
AudioTrackListnew_audio_track (int, int, RouteGroup, unsigned int, std::string, unsigned int, TrackMode, bool)
AudioTrackListnew_audio_track (int, int, RouteGroup, unsigned int, std::string, unsigned int, TrackMode, bool, bool)
RouteListnew_midi_route (RouteGroup, unsigned int, std::string, bool, PluginInfo, PresetRecord, Flag, unsigned int)
MidiTrackListnew_midi_track (ChanCount, ChanCount, bool, PluginInfo, PresetRecord, RouteGroup, unsigned int, std::string, unsigned int, TrackMode, bool)
MidiTrackListnew_midi_track (ChanCount, ChanCount, bool, PluginInfo, PresetRecord, RouteGroup, unsigned int, std::string, unsigned int, TrackMode, bool, bool)
RouteListnew_route_from_template (unsigned int, unsigned int, std::string, std::string, PlaylistDisposition)
RouteGroupnew_route_group (std::string)
longnominal_sample_rate ()

"native" sample rate of session, regardless of current audioengine rate, pullup/down etc

MixerScenenth_mixer_scene (unsigned long, bool)
boolnth_mixer_scene_valid (unsigned long)
std::stringpath ()
SessionPlaylistsplaylists ()
boolplot_process_graph (std::string)
voidremove_route_group (RouteGroup)
intrename (std::string)
voidrequest_bounded_roll (long, long)
voidrequest_locate (long, LocateTransportDisposition, TransportRequestSource)
voidrequest_locate (long, bool, LocateTransportDisposition, TransportRequestSource)
voidrequest_play_loop (bool, bool)
voidrequest_roll (TransportRequestSource)
voidrequest_stop (bool, bool, TransportRequestSource)
boolsolo_isolated ()
boolsoloing ()
Sourcesource_by_id (ID)
voidstore_nth_mixer_scene (unsigned long)
Stripablestripable_by_id (ID)
TempoMaptempo_map ()
booltimecode_drop_frames ()
longtimecode_frames_per_hour ()
doubletimecode_frames_per_second ()
VCAManagervca_manager ()
longworst_input_latency ()
longworst_latency_preroll ()
longworst_latency_preroll_buffer_size_ceil ()
longworst_output_latency ()
longworst_route_latency ()
@@ -5038,12 +4969,13 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolget_auto_play () boolget_auto_return () boolget_count_in () + CueBehaviorget_cue_behavior () + boolget_draw_opaque_midi_regions () boolget_external_sync () boolget_glue_new_markers_to_bars_and_beats () boolget_glue_new_regions_to_bars_and_beats () InsertMergePolicyget_insert_merge_policy () boolget_jack_time_master () - boolget_layered_record_mode () unsigned intget_meterbridge_label_height () boolget_midi_copy_is_fork () std::stringget_midi_search_path () @@ -5054,8 +4986,10 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolget_punch_out () std::stringget_raid_path () boolget_realtime_export () + RecordModeget_record_mode () MonitorChoiceget_session_monitoring () boolget_show_busses_on_meterbridge () + boolget_show_fader_on_meterbridge () boolget_show_group_tabs () boolget_show_master_on_meterbridge () boolget_show_midi_on_meterbridge () @@ -5075,6 +5009,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolget_timecode_offset_negative () boolget_track_name_number () boolget_track_name_take () + boolget_triggerbox_overrides_disk_monitoring () boolget_use_monitor_fades () boolget_use_region_fades () boolget_use_transport_fades () @@ -5089,12 +5024,13 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolset_auto_play (bool) boolset_auto_return (bool) boolset_count_in (bool) + boolset_cue_behavior (CueBehavior) + boolset_draw_opaque_midi_regions (bool) boolset_external_sync (bool) boolset_glue_new_markers_to_bars_and_beats (bool) boolset_glue_new_regions_to_bars_and_beats (bool) boolset_insert_merge_policy (InsertMergePolicy) boolset_jack_time_master (bool) - boolset_layered_record_mode (bool) boolset_meterbridge_label_height (unsigned int) boolset_midi_copy_is_fork (bool) boolset_midi_search_path (std::string) @@ -5105,8 +5041,10 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolset_punch_out (bool) boolset_raid_path (std::string) boolset_realtime_export (bool) + boolset_record_mode (RecordMode) boolset_session_monitoring (MonitorChoice) boolset_show_busses_on_meterbridge (bool) + boolset_show_fader_on_meterbridge (bool) boolset_show_group_tabs (bool) boolset_show_master_on_meterbridge (bool) boolset_show_midi_on_meterbridge (bool) @@ -5126,6 +5064,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolset_timecode_offset_negative (bool) boolset_track_name_number (bool) boolset_track_name_take (bool) + boolset_triggerbox_overrides_disk_monitoring (bool) boolset_use_monitor_fades (bool) boolset_use_region_fades (bool) boolset_use_transport_fades (bool) @@ -5141,12 +5080,13 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolauto_play boolauto_return boolcount_in + ARDOUR.CueBehaviorcue_behavior + booldraw_opaque_midi_regions boolexternal_sync boolglue_new_markers_to_bars_and_beats boolglue_new_regions_to_bars_and_beats ARDOUR.InsertMergePolicyinsert_merge_policy booljack_time_master - boollayered_record_mode unsigned intmeterbridge_label_height boolmidi_copy_is_fork std::stringmidi_search_path @@ -5157,8 +5097,10 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolpunch_out std::stringraid_path boolrealtime_export + ARDOUR.RecordModerecord_mode ARDOUR.MonitorChoicesession_monitoring boolshow_busses_on_meterbridge + boolshow_fader_on_meterbridge boolshow_group_tabs boolshow_master_on_meterbridge boolshow_midi_on_meterbridge @@ -5178,6 +5120,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C booltimecode_offset_negative booltrack_name_number booltrack_name_take + booltriggerbox_overrides_disk_monitoring booluse_monitor_fades booluse_region_fades booluse_transport_fades @@ -5335,8 +5278,8 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C voidset_automation_state (AutoState) voidset_value (double, GroupControlDisposition)

Set `internal' value

All derived classes must implement this.

Basic derived classes will ignore group_override but more sophisticated children, notably those that proxy the value setting logic via an object that is aware of group relationships between this control and others, will find it useful.

value
raw numeric value to set
group_override
if and how to propagate value to grouped controls
- voidstart_touch (double) - voidstop_touch (double) + voidstart_touch (timepos_t) + voidstop_touch (timepos_t) booltoggled () doubleupper () boolwritable () @@ -5347,6 +5290,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

Inherited from PBD:Controllable

+
Methods
voiddump_registry ()
std::stringname ()

Inherited from PBD:StatefulPtr

@@ -5393,8 +5337,8 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C voidset_automation_state (AutoState) voidset_value (double, GroupControlDisposition)

Set `internal' value

All derived classes must implement this.

Basic derived classes will ignore group_override but more sophisticated children, notably those that proxy the value setting logic via an object that is aware of group relationships between this control and others, will find it useful.

value
raw numeric value to set
group_override
if and how to propagate value to grouped controls
- voidstart_touch (double) - voidstop_touch (double) + voidstart_touch (timepos_t) + voidstop_touch (timepos_t) booltoggled () doubleupper () boolwritable () @@ -5405,6 +5349,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

Inherited from PBD:Controllable

+
Methods
voiddump_registry ()
std::stringname ()

Inherited from PBD:StatefulPtr

@@ -5450,8 +5395,8 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C voidset_automation_state (AutoState) voidset_value (double, GroupControlDisposition)

Set `internal' value

All derived classes must implement this.

Basic derived classes will ignore group_override but more sophisticated children, notably those that proxy the value setting logic via an object that is aware of group relationships between this control and others, will find it useful.

value
raw numeric value to set
group_override
if and how to propagate value to grouped controls
- voidstart_touch (double) - voidstop_touch (double) + voidstart_touch (timepos_t) + voidstop_touch (timepos_t) booltoggled () doubleupper () boolwritable () @@ -5462,6 +5407,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

Inherited from PBD:Controllable

+
Methods
voiddump_registry ()
std::stringname ()

Inherited from PBD:StatefulPtr

@@ -5506,8 +5452,8 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C voidset_automation_state (AutoState) voidset_value (double, GroupControlDisposition)

Set `internal' value

All derived classes must implement this.

Basic derived classes will ignore group_override but more sophisticated children, notably those that proxy the value setting logic via an object that is aware of group relationships between this control and others, will find it useful.

value
raw numeric value to set
group_override
if and how to propagate value to grouped controls
- voidstart_touch (double) - voidstop_touch (double) + voidstart_touch (timepos_t) + voidstop_touch (timepos_t) booltoggled () doubleupper () boolwritable () @@ -5518,6 +5464,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

Inherited from PBD:Controllable

+
Methods
voiddump_registry ()
std::stringname ()

Inherited from PBD:StatefulPtr

@@ -5541,9 +5488,9 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolempty () boolhas_been_analysed () boolisnil () - longlength (long) - longnatural_position () - longtimeline_position () + timepos_tlength () + timepos_tnatural_position () + timepos_ttimeline_position () longtimestamp () intuse_count () boolused () @@ -5665,77 +5612,46 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C unsigned longsize () LuaTabletable () -

 ARDOUR:Tempo

-

C‡: ARDOUR::Tempo

+

 ARDOUR:TimelineRange

+

C‡: ARDOUR::TimelineRange

-

Tempo, the speed at which musical time progresses (BPM).

- - - - - - - - - - -
Constructor
ARDOUR.Tempo (double, double, double)
Methods
doubleend_note_types_per_minute ()
doublenote_type ()
doublenote_types_per_minute ()
doublequarter_notes_per_minute ()
doublesamples_per_note_type (long)

audio samples per note type. if you want an instantaneous value for this, use TempoMap::samples_per_quarter_note_at() instead.

sr
samplerate
doublesamples_per_quarter_note (long)

audio samples per quarter note. if you want an instantaneous value for this, use TempoMap::samples_per_quarter_note_at() instead.

sr
samplerate
-

 ARDOUR:TempoMap

-

C‡: ARDOUR::TempoMap

-
-

Tempo Map - mapping of timecode to musical time. convert audio-samples, sample-rate to Bar/Beat/Tick, Meter/Tempo

- - - - - - - - - - - - - - - - - -
Methods
MeterSectionadd_meter (Meter, BBT_TIME, long, PositionLockStyle)
TempoSectionadd_tempo (Tempo, double, long, PositionLockStyle)
BBT_TIMEbbt_at_sample (long)

Returns the BBT time corresponding to the supplied sample position.

sample
the position in audio samples.

Returns the BBT time at the sample position .

doubleexact_beat_at_sample (long, int)
doubleexact_qn_at_sample (long, int)
Beatsframewalk_to_qn (long, long)

Count the number of beats that are equivalent to distance when going forward, starting at pos.

MeterSectionmeter_section_at_beat (double)
MeterSectionmeter_section_at_sample (long)
TempoSectionnext_tempo_section (TempoSection)
TempoSectionprevious_tempo_section (TempoSection)
longsamplepos_plus_qn (long, Beats)

Add some (fractional) Beats to a session sample position, and return the result in samples. pos can be -ve, if required.

TempoSectiontempo_section_at_sample (long)
-

 ARDOUR:TempoSection

-

C‡: ARDOUR::TempoSection

-

is-a: ARDOUR:MetricSection

-
-

A section of timeline with a certain Tempo.

- - - - - - - - + + + + + + + +
Methods
boolactive ()
doublec ()
boolclamped ()
boollocked_to_meter ()
Cast
Tempoto_tempo ()
ARDOUR.TimelineRange (timepos_t, timepos_t, unsigned int)
Methods
timepos_t_end ()
boolequal (TimelineRange)
timecnt_tlength ()
timepos_tstart ()
Data Members
unsigned intid
-

Inherited from ARDOUR:MetricSection

+

 ARDOUR:TimelineRangeList

+

C‡: std::list<ARDOUR::TimelineRange >

+
+ + - - - - - - - - -
Constructor
ARDOUR.TimelineRangeList ()
Methods
boolinitial ()
boolis_tempo ()
doubleminute ()
doubleminute_at_sample (long)
doublepulse ()
longsample ()
longsample_at_minute (double)
voidset_pulse (double)
+ LuaTableadd (LuaTable {TimelineRange}) + TimelineRangeback () + boolempty () + TimelineRangefront () + LuaIteriter () + voidpush_back (TimelineRange) + voidreverse () + unsigned longsize () + LuaTabletable () + voidunique () +

 ARDOUR:Track

C‡: boost::shared_ptr< ARDOUR::Track >, boost::weak_ptr< ARDOUR::Track >

is-a: ARDOUR:Route

A track is an route (bus) with a recordable diskstream and related objects relevant to recording, playback and editing.

Specifically a track has a playlist object that describes material to be played from disk, and modifies that object during recording and editing.

+ + @@ -6158,7 +6074,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C
Constructor
ARDOUR.Track ()
Methods
Regionbounce (InterThreadInfo&, std::string)

bounce track from session start to session end to new region

itt
asynchronous progress report and cancel

Returns a new audio region (or nil in case of error)

- +
Methods
std::stringname ()
longposition ()
timepos_tposition ()
Type_type ()

 ArdourUI:ArdourMarkerList

@@ -6191,7 +6107,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C Methods voidaccess_action (std::string, std::string) voidadd_location_from_playhead_cursor () - voidadd_location_mark (long) + voidadd_location_mark (timepos_t) TrackViewListaxis_views_from_routes (RouteListPtr) voidcenter_screen (long) voidclear_grouped_playlists (RouteUI) @@ -6202,8 +6118,8 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

Returns The current mouse mode (gain, object, range, timefx etc.) (defined in editing_syms.h)

longcurrent_page_samples () voiddeselect_all () - LuaTable(...)do_embed (StringVector, ImportDisposition, ImportMode, long&, PluginInfo) - LuaTable(...)do_import (StringVector, ImportDisposition, ImportMode, SrcQuality, MidiTrackNameSource, MidiTempoMapDisposition, long&, PluginInfo, bool) + LuaTable(...)do_embed (StringVector, ImportDisposition, ImportMode, timepos_t&, PluginInfo, Track) + LuaTable(...)do_import (StringVector, ImportDisposition, ImportMode, SrcQuality, MidiTrackNameSource, MidiTempoMapDisposition, timepos_t&, PluginInfo, Track, bool)

Import existing media

booldragging_playhead ()

Returns true if the playhead is currently being dragged, otherwise false

@@ -6221,13 +6137,14 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

Returns true if the editor is following the playhead

longget_current_zoom () Selectionget_cut_buffer () - unsigned intget_grid_beat_divisions (long) - LuaTable(Beats, ...)get_grid_type_as_beats (bool&, long) - LuaTable(long, ...)get_nudge_distance (long, long&) - longget_paste_offset (long, unsigned int, long) + LuaTable(Beats, ...)get_draw_length_as_beats (bool&, timepos_t) + intget_grid_beat_divisions (GridType) + LuaTable(Beats, ...)get_grid_type_as_beats (bool&, timepos_t) + LuaTable(timecnt_t, ...)get_nudge_distance (timepos_t, timecnt_t&) + timecnt_tget_paste_offset (timepos_t, unsigned int, timecnt_t) LuaTable(...)get_pointer_position (double&, double&) Selectionget_selection () - LuaTable(bool, ...)get_selection_extents (long&, long&) + LuaTable(bool, ...)get_selection_extents (timepos_t&, timepos_t&) boolget_smart_mode () StripableTimeAxisViewget_stripable_time_axis_by_id (ID) TrackViewListget_track_views () @@ -6240,7 +6157,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C longleftmost_sample () voidmaximise_editing_space () voidmaybe_locate_with_edit_preroll (long) - voidmouse_add_new_marker (long, bool) + voidmouse_add_new_marker (timepos_t, Flags, int) voidnew_playlists_for_all_tracks (bool) voidnew_playlists_for_armed_tracks (bool) voidnew_playlists_for_grouped_tracks (RouteUI, bool) @@ -6271,10 +6188,10 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C voidseparate_region_from_selection () voidset_follow_playhead (bool, bool)

Set whether the editor should follow the playhead.

yn
true to follow playhead, otherwise false.
catch_up
true to reset the editor view to show the playhead (if yn == true), otherwise false.
- voidset_loop_range (long, long, std::string) + voidset_loop_range (timepos_t, timepos_t, std::string) voidset_mouse_mode (MouseMode, bool)

Set the mouse mode (gain, object, range, timefx etc.)

m
Mouse mode (defined in editing_syms.h)
force
Perform the effects of the change even if no change is required (ie even if the current mouse mode is equal to
- voidset_punch_range (long, long, std::string) + voidset_punch_range (timepos_t, timepos_t, std::string) voidset_selection (SelectionList, Operation) voidset_snap_mode (SnapMode)

Set the snap mode.

m
Snap mode (defined in editing_syms.h)
@@ -6323,10 +6240,10 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

Class to represent list of selected regions.

- + - +
Methods
longend_sample ()
timepos_tend_time ()
unsigned longn_midi_regions ()
RegionListregionlist ()
longstart ()
timepos_tstart_time ()

 ArdourUI:RegionView

C‡: RegionView

@@ -6403,7 +6320,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

Returns effective height (taking children into account) in canvas units, or 0 if this TimeAxisView has not yet been shown

intorder ()

Returns index of this TimeAxisView within its parent

- voidset_height (unsigned int, TrackHeightMode) + voidset_height (unsigned int, TrackHeightMode, bool) doubley_position ()

Returns y position, or -1 if hidden

@@ -6419,7 +6336,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

Returns effective height (taking children into account) in canvas units, or 0 if this TimeAxisView has not yet been shown

intorder ()

Returns index of this TimeAxisView within its parent

- voidset_height (unsigned int, TrackHeightMode) + voidset_height (unsigned int, TrackHeightMode, bool) doubley_position ()

Returns y position, or -1 if hidden

@@ -6431,26 +6348,31 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

This class object is only used indirectly as return-value and function-parameter. It provides no methods by itself.

 ArdourUI:TimeSelection

C‡: TimeSelection

-

is-a: ARDOUR:AudioRangeList

+

is-a: ARDOUR:TimelineRangeList

- - + + + +
Methods
longend_sample ()
longlength ()
longstart ()
timepos_tend_time ()
timecnt_tlength ()
longstart_sample ()
timepos_tstart_time ()
-

Inherited from ARDOUR:AudioRangeList

+

Inherited from ARDOUR:TimelineRangeList

- + - - - + + + + - - + + + +
Constructor
ARDOUR.AudioRangeList ()
ARDOUR.TimelineRangeList ()
Methods
AudioRangeback ()
boolempty ()
AudioRangefront ()
LuaTableadd (LuaTable {TimelineRange})
TimelineRangeback ()
boolempty ()
TimelineRangefront ()
LuaIteriter ()
voidreverse ()
unsigned longsize ()
voidpush_back (TimelineRange)
voidreverse ()
unsigned longsize ()
LuaTabletable ()
voidunique ()

 ArdourUI:TrackSelection

C‡: TrackSelection

@@ -6499,7 +6421,9 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C unsigned intget_action_table_columns () boolget_all_floating_windows_are_dialogs () boolget_allow_non_quarter_pulse () + boolget_ask_before_closing_last_window () boolget_automation_edit_cancels_auto_hide () + boolget_autoplay_clips () boolget_autoplay_files () boolget_autoscroll_editor () boolget_blink_alert_indicators () @@ -6508,11 +6432,13 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolget_buggy_gradients () boolget_cairo_image_surface () boolget_check_announcements () - unsigned longget_clock_display_limit () + longget_clock_display_limit () std::stringget_color_file () boolget_color_regions_using_track_color () std::stringget_default_bindings () + intget_default_lower_midi_note () boolget_default_narrow_ms () + intget_default_upper_midi_note () boolget_draggable_playhead () floatget_draggable_playhead_speed () boolget_editor_stereo_only_meters () @@ -6521,12 +6447,13 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolget_floating_monitor_section () boolget_follow_edits () intget_font_scale () + std::stringget_freesound_dir () boolget_grid_follows_internal () boolget_hide_splash_screen () - boolget_hiding_groups_deactivates_groups () std::stringget_icon_set () InputMeterLayoutget_input_meter_layout () boolget_input_meter_scopes () + unsigned intget_insert_at_position () std::stringget_keyboard_layout () std::stringget_keyboard_layout_name () boolget_link_region_and_track_selection () @@ -6545,6 +6472,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolget_never_display_periodic_midi () boolget_new_automation_points_on_lane () boolget_no_new_session_dialog () + boolget_one_plugin_window_only () boolget_only_copy_imported_files () boolget_open_gui_after_adding_plugin () boolget_prefer_inline_over_gui () @@ -6563,6 +6491,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolget_show_inline_display_by_default () boolget_show_mini_timeline () boolget_show_name_highlight () + boolget_show_on_cue_page () boolget_show_plugin_scan_window () boolget_show_region_cue_markers () boolget_show_region_gain () @@ -6570,12 +6499,14 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolget_show_region_xrun_markers () boolget_show_secondary_clock () boolget_show_snapped_cursor () + boolget_show_toolbar_cuectrl () boolget_show_toolbar_latency () boolget_show_toolbar_monitor_info () boolget_show_toolbar_monitoring () boolget_show_toolbar_recpunch () boolget_show_toolbar_selclock () boolget_show_track_meters () + boolget_show_triggers_inline () boolget_show_waveform_clipping () boolget_show_waveforms () boolget_show_waveforms_while_recording () @@ -6599,6 +6530,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolget_use_mouse_position_as_zoom_focus_on_scroll () boolget_use_note_bars_for_velocity () boolget_use_note_color_for_velocity () + boolget_use_route_color_widely () boolget_use_time_rulers_to_zoom_with_vertical_drag () boolget_use_tooltips () boolget_use_wm_visibility () @@ -6613,7 +6545,9 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolset_action_table_columns (unsigned int) boolset_all_floating_windows_are_dialogs (bool) boolset_allow_non_quarter_pulse (bool) + boolset_ask_before_closing_last_window (bool) boolset_automation_edit_cancels_auto_hide (bool) + boolset_autoplay_clips (bool) boolset_autoplay_files (bool) boolset_autoscroll_editor (bool) boolset_blink_alert_indicators (bool) @@ -6622,11 +6556,13 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolset_buggy_gradients (bool) boolset_cairo_image_surface (bool) boolset_check_announcements (bool) - boolset_clock_display_limit (unsigned long) + boolset_clock_display_limit (long) boolset_color_file (std::string) boolset_color_regions_using_track_color (bool) boolset_default_bindings (std::string) + boolset_default_lower_midi_note (int) boolset_default_narrow_ms (bool) + boolset_default_upper_midi_note (int) boolset_draggable_playhead (bool) boolset_draggable_playhead_speed (float) boolset_editor_stereo_only_meters (bool) @@ -6635,12 +6571,13 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolset_floating_monitor_section (bool) boolset_follow_edits (bool) boolset_font_scale (int) + boolset_freesound_dir (std::string) boolset_grid_follows_internal (bool) boolset_hide_splash_screen (bool) - boolset_hiding_groups_deactivates_groups (bool) boolset_icon_set (std::string) boolset_input_meter_layout (InputMeterLayout) boolset_input_meter_scopes (bool) + boolset_insert_at_position (unsigned int) boolset_keyboard_layout (std::string) boolset_keyboard_layout_name (std::string) boolset_link_region_and_track_selection (bool) @@ -6659,6 +6596,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolset_never_display_periodic_midi (bool) boolset_new_automation_points_on_lane (bool) boolset_no_new_session_dialog (bool) + boolset_one_plugin_window_only (bool) boolset_only_copy_imported_files (bool) boolset_open_gui_after_adding_plugin (bool) boolset_prefer_inline_over_gui (bool) @@ -6677,6 +6615,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolset_show_inline_display_by_default (bool) boolset_show_mini_timeline (bool) boolset_show_name_highlight (bool) + boolset_show_on_cue_page (bool) boolset_show_plugin_scan_window (bool) boolset_show_region_cue_markers (bool) boolset_show_region_gain (bool) @@ -6684,12 +6623,14 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolset_show_region_xrun_markers (bool) boolset_show_secondary_clock (bool) boolset_show_snapped_cursor (bool) + boolset_show_toolbar_cuectrl (bool) boolset_show_toolbar_latency (bool) boolset_show_toolbar_monitor_info (bool) boolset_show_toolbar_monitoring (bool) boolset_show_toolbar_recpunch (bool) boolset_show_toolbar_selclock (bool) boolset_show_track_meters (bool) + boolset_show_triggers_inline (bool) boolset_show_waveform_clipping (bool) boolset_show_waveforms (bool) boolset_show_waveforms_while_recording (bool) @@ -6713,6 +6654,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolset_use_mouse_position_as_zoom_focus_on_scroll (bool) boolset_use_note_bars_for_velocity (bool) boolset_use_note_color_for_velocity (bool) + boolset_use_route_color_widely (bool) boolset_use_time_rulers_to_zoom_with_vertical_drag (bool) boolset_use_tooltips (bool) boolset_use_wm_visibility (bool) @@ -6728,7 +6670,9 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C unsigned intaction_table_columns boolall_floating_windows_are_dialogs boolallow_non_quarter_pulse + boolask_before_closing_last_window boolautomation_edit_cancels_auto_hide + boolautoplay_clips boolautoplay_files boolautoscroll_editor boolblink_alert_indicators @@ -6737,11 +6681,13 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolbuggy_gradients boolcairo_image_surface boolcheck_announcements - unsigned longclock_display_limit + longclock_display_limit std::stringcolor_file boolcolor_regions_using_track_color std::stringdefault_bindings + intdefault_lower_midi_note booldefault_narrow_ms + intdefault_upper_midi_note booldraggable_playhead floatdraggable_playhead_speed booleditor_stereo_only_meters @@ -6750,12 +6696,13 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolfloating_monitor_section boolfollow_edits intfont_scale + std::stringfreesound_dir boolgrid_follows_internal boolhide_splash_screen - boolhiding_groups_deactivates_groups std::stringicon_set ARDOUR.InputMeterLayoutinput_meter_layout boolinput_meter_scopes + unsigned intinsert_at_position std::stringkeyboard_layout std::stringkeyboard_layout_name boollink_region_and_track_selection @@ -6774,6 +6721,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolnever_display_periodic_midi boolnew_automation_points_on_lane boolno_new_session_dialog + boolone_plugin_window_only boolonly_copy_imported_files boolopen_gui_after_adding_plugin boolprefer_inline_over_gui @@ -6792,6 +6740,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolshow_inline_display_by_default boolshow_mini_timeline boolshow_name_highlight + boolshow_on_cue_page boolshow_plugin_scan_window boolshow_region_cue_markers boolshow_region_gain @@ -6799,12 +6748,14 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C boolshow_region_xrun_markers boolshow_secondary_clock boolshow_snapped_cursor + boolshow_toolbar_cuectrl boolshow_toolbar_latency boolshow_toolbar_monitor_info boolshow_toolbar_monitoring boolshow_toolbar_recpunch boolshow_toolbar_selclock boolshow_track_meters + boolshow_triggers_inline boolshow_waveform_clipping boolshow_waveforms boolshow_waveforms_while_recording @@ -6828,6 +6779,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C booluse_mouse_position_as_zoom_focus_on_scroll booluse_note_bars_for_velocity booluse_note_color_for_velocity + booluse_route_color_widely booluse_time_rulers_to_zoom_with_vertical_drag booluse_tooltips booluse_wm_visibility @@ -7149,16 +7101,6 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C voidshow_in_cairo_context (Context)

Draws a Layout in the specified Cairo context. The top-left corner of the Layout will be drawn at the current point of the cairo context.

context
A Cairo context.
-

 Evoral:Beats

-

C‡: Temporal::Beats

-
-

Musical time in beats.

- - - - - -
Constructor
Evoral.Beats (double)
Methods
doubleto_double ()

 Evoral:Control

C‡: boost::shared_ptr< Evoral::Control >, boost::weak_ptr< Evoral::Control >

@@ -7175,7 +7117,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C - +
Data Members
doublevalue
doublewhen
Temporal:timepos_twhen

 Evoral:ControlList

C‡: boost::shared_ptr< Evoral::ControlList >, boost::weak_ptr< Evoral::ControlList >

@@ -7183,15 +7125,11 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

A list (sequence) of time-stamped values for a control

- - - - + + - - - - + + @@ -7199,17 +7137,14 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C - - + - - - - + +
Methods
voidadd (double, double, bool, bool)

Add an event to this list.

This method is intended to write automation in realtime. If the transport is stopped, guard-points will be added regardless of parameter with_guards.

when
absolute time in samples
value
parameter value
with_guards
if true, add guard-points
with_initial
if true, add an initial point if the list is empty
voidclear (double, double)

Remove all events in the given time range from this list.

start
start of range (inclusive) in audio samples
end
end of range (inclusive) in audio samples
voidadd (timepos_t, double, bool, bool)
voidclear (timepos_t, timepos_t)
voidclear_list ()
booleditor_add (double, double, bool)

Add an event to this list.

This method is intended for making manual changes from the GUI. An event will only be created if no other event exists at the given time.

when
absolute time in samples
value
parameter value
with_guards
if true, add guard-points

Returns true if an event was added.

doubleeval (double)

Queries the event value at the given time (takes a read-lock, not safe while writing automation).

where
absolute time in samples

Returns parameter value

booleditor_add (timepos_t, double, bool)
doubleeval (timepos_t)
EventListevents ()

Returns the list of events

boolin_write_pass ()
InterpolationStyleinterpolation ()

query interpolation style of the automation data

Returns Interpolation Style

boolisnil ()
LuaTable(double, ...)rt_safe_eval (double, bool&)

Realtime safe version of eval(). This may fail if a read-lock cannot be taken.

where
absolute time in samples
ok
boolean reference if returned value is valid

Returns parameter value

LuaTable(double, ...)rt_safe_eval (timepos_t, bool&)
boolset_interpolation (InterpolationStyle)

Sets the interpolation style of the automation data.

This will fail when asking for Logarithmic scale and min,max crosses 0 or Exponential scale with min != 0.

is
interpolation style

Returns true if style change was successful

unsigned longsize ()
voidthin (double)

Thin the number of events in this list.

The thinning factor corresponds to the area of a triangle computed between three points in the list (time-difference * value-difference). If the area is large, it indicates significant non-linearity between the points.

Time is measured in samples, value is usually normalized to 0..1.

During automation recording we thin the recorded points using this value. If a point is sufficiently co-linear with its neighbours (as defined by the area of the triangle formed by three of them), we will not include it in the list. The larger the value, the more points are excluded, so this effectively measures the amount of thinning to be done.

thinning_factor
area-size (default: 20)
voidtruncate_end (double)

Remove all events after the given time from this list.

last_coordinate
time in audio samples of the last event to keep
voidtruncate_start (double)

Remove all events up to to the given time from this list.

overall_length
overall length in audio samples
voidtruncate_end (timepos_t)
voidtruncate_start (timecnt_t)
Cast
AutomationListto_automationlist ()
@@ -7242,10 +7177,10 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C Methods unsigned charchannel () boolisnil () - Beatslength () + Beatslength () unsigned charnote () unsigned charoff_velocity () - Beatstime () + Beatstime () unsigned charvelocity ()

 Evoral:Parameter

@@ -7274,20 +7209,22 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

Minimum value (in Hz, for frequencies)

floatnormal

Default value

+ unsigned intrangesteps +

number of steps, [min,max] (inclusive). <= 1 means continuous. == 2 only min, max. For integer controls this is usually (1 + max - min)

booltoggled

True iff parameter is boolean

floatupper

Maximum value (in Hz, for frequencies)

 Evoral:Range

-

C‡: Evoral::Range<long>

+

C‡: Temporal::Range

- - - - + + + +
Constructor
Evoral.Range (long, long)
Data Members
longfrom
longto
Evoral.Range (timepos_t, timepos_t)
Methods
timepos_t_end ()
timepos_tstart ()

 Evoral:Sequence

C‡: boost::shared_ptr< Evoral::Sequence<Temporal::Beats> >, boost::weak_ptr< Evoral::Sequence<Temporal::Beats> >

@@ -7392,6 +7329,7 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C

This is a pure virtual class to represent a scalar control.

Note that it contains no storage/state for the controllable thing that it represents. Derived classes must provide set_value()/get_value() methods, which will involve (somehow) an actual location to store the value.

In essence, this is an interface, not a class.

Without overriding upper() and lower(), a derived class will function as a control whose value can range between 0 and 1.0.

We express Controllable values in one of three ways: 1. `user' --- as presented to the user (e.g. dB, Hz, etc.) 2. `interface' --- as used in some cases for the UI representation (in order to make controls behave logarithmically). 3. `internal' --- as passed to a processor, track, plugin, or whatever.

Note that in some cases user and internal may be the same (and interface different) e.g. frequency, which is presented to the user and passed to the processor in linear terms, but which needs log scaling in the interface.

In other cases, user and interface may be the same (and internal different) e.g. gain, which is presented to the user in log terms (dB) but passed to the processor as a linear quantity.

+ @@ -7566,18 +7504,252 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C
Methods
voiddump_registry ()
doubleget_value ()

Get `internal' value

Returns raw value as used for the plugin/processor control port

boolisnil ()
Methods
std::stringname ()
-

 Timecode:BBT_TIME

-

C‡: Timecode::BBT_Time

+

 Temporal

+
+ + + +
Methods
longsuperclock_ticks_per_second ()
+

 Temporal:BBT_Offset

+

C‡: Temporal::BBT_Offset

+
+ + + + + + + + + +
Constructor
Temporal.BBT_Offset (unsigned int, unsigned int, unsigned int)
Methods
std::stringstr ()
Data Members
intbars
intbeats
intticks
+

 Temporal:BBT_TIME

+

C‡: Temporal::BBT_Time

Bar, Beat, Tick Time (i.e. Tempo-Based Time)

- + + +
Constructor
Timecode.BBT_TIME (unsigned int, unsigned int, unsigned int)
Temporal.BBT_TIME (unsigned int, unsigned int, unsigned int)
Methods
std::stringstr ()
Data Members
intbars
intbeats
intticks
+

 Temporal:Beats

+

C‡: Temporal::Beats

+
+

Musical time in beats.

+ + + + + + + + + + + + + + +
Constructor
Temporal.Beats (int, int)
Methods
Beatsbeats (long)
Beatsdiff (Beats)
Beatsfrom_double (double)
Beatsnext_beat ()
Beatsprev_beat ()
Beatsround_down_to_beat ()
Beatsround_to_beat ()
Beatsround_up_to_beat ()
std::stringstr ()
Beatsticks (long)
+

 Temporal:Meter

+

C‡: Temporal::Meter

+
+

Meter, or time signature (subdivisions per bar, and which note type is a single subdivision).

+ + + + + + +
Constructor
Temporal.Meter (double, double)
Methods
intdivisions_per_bar ()
intnote_value ()
+

 Temporal:MeterPoint

+

C‡: Temporal::MeterPoint

+

is-a: Temporal:Meter

+
+

Meter, or time signature (subdivisions per bar, and which note type is a single subdivision).

+ + + +
Cast
Pointto_point ()
+

Inherited from Temporal:Meter

+ + + + + + +
Constructor
Temporal.Meter (double, double)
Methods
intdivisions_per_bar ()
intnote_value ()
+

 Temporal:Point

+

C‡: Temporal::Point

+
+ + + + + + + +
Methods
BBT_TIMEbbt ()
Beatsbeats ()
longsample (int)
longsclock ()
timepos_ttime ()
+

 Temporal:Tempo

+

C‡: Temporal::Tempo

+
+

Tempo, the speed at which musical time progresses (BPM).

+ + + + + + + + + + +
Constructor
Temporal.Tempo (double, double, int)
Methods
intnote_type ()
doublenote_types_per_minute ()
doublequarter_notes_per_minute ()
doublesamples_per_note_type (int)
doublesamples_per_quarter_note (int)
longsuperclocks_per_note_type ()
+

 Temporal:TempoMap

+

C‡: boost::shared_ptr< Temporal::TempoMap >, boost::weak_ptr< Temporal::TempoMap >

+
+

Base class for objects with saveable and undoable state with destruction notification

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Methods
voidabort_update ()
BBT_TIMEbbt_at (timepos_t)
BBT_TIMEbbt_at_beats (Beats)
timecnt_tbbt_duration_at (timepos_t, BBT_Offset)
BBT_TIMEbbt_walk (BBT_TIME, BBT_Offset)
Beatsbbtwalk_to_quarters (Beats, BBT_Offset)
Beatsbbtwalk_to_quarters_bbt (BBT_TIME, BBT_Offset)
timecnt_tconvert_duration (timecnt_t, timepos_t, TimeDomain)
unsigned intcount_bars (Beats, Beats)
TempoMapfetch_writable ()
boolisnil ()
MeterPointmeter_at (timepos_t)
MeterPointmeter_at_bbt (BBT_TIME)
MeterPointmeter_at_beats (Beats)
MeterPointmeter_at_sc (long)
LuaTable(...)midi_clock_beat_at_or_after (long, long&, unsigned int&)
Beatsquarters_at (timepos_t)
Beatsquarters_at_bbt (BBT_TIME)
Beatsquarters_at_sample (long)
doublequarters_per_minute_at (timepos_t)
TempoMapread ()
BBT_TIMEround_to_bar (BBT_TIME)
longsample_at (timepos_t)
longsample_at_bbt (Beats)
longsample_at_beats (Beats)
boolset_continuing (TempoPoint&, bool)
MeterPointset_meter (Meter, timepos_t)
boolset_ramped (TempoPoint&, bool)
TempoPointset_tempo (Tempo, timepos_t)
longsuperclock_at (timepos_t)
longsuperclock_at_bbt (BBT_TIME)
longsuperclock_at_beats (Beats)
TempoPointtempo_at (timepos_t)
TempoPointtempo_at_bbt (BBT_TIME)
TempoPointtempo_at_beats (Beats)
TempoPointtempo_at_sc (long)
intupdate (TempoMap)
TempoMapwrite_copy ()
+

 Temporal:TempoPoint

+

C‡: Temporal::TempoPoint

+

is-a: Temporal:Tempo

+
+

Tempo, the speed at which musical time progresses (BPM).

+ + + + + + + +
Methods
Beatsquarters_at_sample (long)
timepos_ttime ()
Cast
Pointto_point ()
Tempoto_tempo ()
+

Inherited from Temporal:Tempo

+ + + + + + + + + + +
Constructor
Temporal.Tempo (double, double, int)
Methods
intnote_type ()
doublenote_types_per_minute ()
doublequarter_notes_per_minute ()
doublesamples_per_note_type (int)
doublesamples_per_quarter_note (int)
longsuperclocks_per_note_type ()
+

 Temporal:ratio

+

C‡: Temporal::_ratio_t<long>

+
+ + + + + + +
Constructor
Temporal.ratio (long, long)
Methods
boolis_unity ()
boolis_zero ()
+

 Temporal:timecnt_t

+

C‡: Temporal::timecnt_t

+
+

a timecnt_t measures a duration in a specified time domain and starting at a specific position.

It can be freely converted between time domains, as well as used as the subject of most arithmetic operations.

An important distinction between timepos_t and timecnt_t can be thought of this way: a timepos_t ALWAYS refers to a position relative to the origin of the timeline (technically, the origin in the tempo map used to translate between audio and musical domains). By contrast, a timecnt_t refers to a certain distance beyond some arbitrary (specified) origin. So, a timepos_t of "3 beats" always means "3 beats measured from the timeline origin". A timecnt_t of "3 beats" always come with a position, and so is really "3 beats after <position>".

The ambiguity surrounding operator-() that affects timepos_t does not exist for timecnt_t: all uses of operator-() are intended to compute the result of subtracting one timecnt_t from another which will always result in another timecnt_t of lesser value than the first operand.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
Constructor
Temporal.timecnt_t (long)
Methods
timecnt_tabs ()
Beatsbeats ()
timecnt_tdecrement ()
timecnt_tfrom_samples (long)
timecnt_tfrom_superclock (long)
timecnt_tfrom_ticks (long)
boolis_negative ()
boolis_positive ()
boolis_zero ()
longmagnitude ()
timecnt_tmax ()
timepos_torigin ()
timepos_tposition ()
longsamples ()
timecnt_tscale (ratio)
timecnt_tscale (ratio)
voidset_position (timepos_t)
voidset_time_domain (TimeDomain)
std::stringstr ()
longsuperclocks ()
longticks ()
TimeDomaintime_domain ()
timecnt_tzero (TimeDomain)
+

 Temporal:timepos_t

+

C‡: Temporal::timepos_t

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
Constructor
Temporal.timepos_t (long)
Methods
Beatsbeats ()
timepos_tdecrement ()
timecnt_tdistance (timepos_t)
timepos_tfrom_superclock (long)
timepos_tfrom_ticks (long)
timepos_tincrement ()
boolis_beats ()
boolis_negative ()
boolis_positive ()
boolis_superclock ()
boolis_zero ()
timepos_tmax (TimeDomain)
longsamples ()
timepos_tscale (ratio)
timepos_tsmallest_step (TimeDomain)
std::stringstr ()
longsuperclocks ()
longticks ()
TimeDomaintime_domain ()
timepos_tzero (bool)

 Timecode:Time

C‡: Timecode::Time

@@ -7881,6 +8053,20 @@ Pointer Classes cannot be created in Lua scripts. It always requires a call to C
  • Timecode.TimecodeFormat.TC5994
  • Timecode.TimecodeFormat.TC60
  • +

     Temporal

    +
      +
    • Temporal.ticks_per_beat
    • +
    +

     Temporal.TimeDomain

    +
      +
    • Temporal.TimeDomain.AudioTime
    • +
    • Temporal.TimeDomain.BeatTime
    • +
    +

     Temporal.Tempo.Type

    +
      +
    • Temporal.Tempo.Type.Ramp
    • +
    • Temporal.Tempo.Type.Constant
    • +

     Evoral.ControlList.InterpolationStyle

    -
    Ardour 6.9  -  Fri, 13 Aug 2021 15:53:36 +0200
    +
    Ardour 7.0-rc1-83-g61fc46ff79  -  Sun, 02 Oct 2022 15:05:03 +0200
    -- 2.37.2