aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--core.lv2/ChangeLog1
-rw-r--r--core.lv2/lv2.h7
2 files changed, 8 insertions, 0 deletions
diff --git a/core.lv2/ChangeLog b/core.lv2/ChangeLog
index 507a791..1a4e8a8 100644
--- a/core.lv2/ChangeLog
+++ b/core.lv2/ChangeLog
@@ -11,6 +11,7 @@ lv2core (UNRELEASED) unstable; urgency=low
* More precisely define properties with OWL
* Move project metadata to manifest
* Add lv2:enumeration port property.
+ * Define run() pre-roll special case (sample_count == 0).
-- David Robillard <d@drobilla.net> UNRELEASED
diff --git a/core.lv2/lv2.h b/core.lv2/lv2.h
index 7706ef1..189cbd3 100644
--- a/core.lv2/lv2.h
+++ b/core.lv2/lv2.h
@@ -198,6 +198,13 @@ typedef struct _LV2_Descriptor {
things that the plugin MUST NOT do within the run() function (see
lv2.ttl for details).
+ As a special case, when @a sample_count == 0, the plugin should update
+ any output ports that represent a single instant in time (e.g. control
+ ports, but not audio ports). This is particularly useful for latent
+ plugins, which should update their latency output port so hosts can
+ pre-roll plugins to compute latency. Plugins MUST NOT crash when
+ @a sample_count == 0.
+
@param instance Instance to be run.
@param sample_count The block size (in samples) for which the plugin
142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169