diff options
-rw-r--r-- | data/lv2.ttl | 18 | ||||
-rw-r--r-- | slv2/lv2.h | 12 |
2 files changed, 17 insertions, 13 deletions
diff --git a/data/lv2.ttl b/data/lv2.ttl index 24a5f25..8862483 100644 --- a/data/lv2.ttl +++ b/data/lv2.ttl @@ -385,9 +385,9 @@ but also in a "hard real-time" environment. To qualify for this the plugin must satisfy all of the following: (1) The plugin must not use malloc(), free() or other heap memory - management within its run() or run_adding() functions. All new - memory used in run() must be managed via the stack. These - restrictions only apply to the run() function. + management within its run() or connect_port() functions. All new + memory used in run() and connect_port() must be managed via the stack. + These restrictions only apply to the run() and connect_port() functions. (2) The plugin will not attempt to make use of any library functions with the exceptions of functions in the ANSI standard C @@ -397,12 +397,12 @@ satisfy all of the following: or any other mechanism that might result in process or thread blocking. - (4) The plugin will take an amount of time to execute a run() or - run_adding() call approximately of form (A+B*SampleCount) where A - and B depend on the machine and host in use. This amount of time - may not depend on input signals or plugin state. The host is left - the responsibility to perform timings to estimate upper bounds for - A and B. + (4) The plugin will take an amount of time to execute a run() call + approximately of form (A+B*SampleCount) where A and B depend on the + machine and host in use. This amount of time may not depend on input + signals or plugin state. The host is left the responsibility to perform + timings to estimate upper bounds for A and B. The plugin will also take an + approximately constant amount of time to execute a connect_port() call. """ . :inplaceBroken a :PluginProperty ; @@ -217,7 +217,11 @@ typedef struct _LV2_Descriptor { * same buffer for more than one port and even use the same buffer for * both input and output (see LV2_PROPERTY_INPLACE_BROKEN (FIXME)). * However, overlapped buffers or use of a single buffer for both - * audio and control data may result in unexpected behaviour. */ + * audio and control data may result in unexpected behaviour. + * + * If the plugin has the property lv2:hardRTCapable then there are + * various things that the plugin MUST NOT do within the connect_port() + * function (see lv2.ttl). */ void (*connect_port)(LV2_Handle Instance, uint32_t Port, void * DataLocation); @@ -257,9 +261,9 @@ typedef struct _LV2_Descriptor { * the plugin instance may not be reused until activate() has been * called again. * - * If the plugin has the property LV2_PROPERTY_HARD_RT_CAPABLE then - * there are various things that the plugin MUST NOT do within the run() - * function (see above). */ + * If the plugin has the property lv2:hardRTCapable then there are + * various things that the plugin MUST NOT do within the run() + * function (see lv2.ttl). */ void (*run)(LV2_Handle Instance, uint32_t SampleCount); |