From 31d3e378cc6616ea1d35e111173f35d2c38e4c0c Mon Sep 17 00:00:00 2001 From: Lars Luthman Date: Mon, 28 Mar 2011 18:19:36 +0000 Subject: Added pui:floatPeakRMS --- ext/pui.lv2/pui.ttl | 38 +++++++++++++++++++++++++++++++++++++- 1 file changed, 37 insertions(+), 1 deletion(-) (limited to 'ext/pui.lv2/pui.ttl') diff --git a/ext/pui.lv2/pui.ttl b/ext/pui.lv2/pui.ttl index 425047d..20c9ee8 100644 --- a/ext/pui.lv2/pui.ttl +++ b/ext/pui.lv2/pui.ttl @@ -156,7 +156,7 @@ those extensions MUST specify:
  • What data (if any) should be passed in the LV2_Feature data pointer.
  • -

    For an example, see pui:floatControl. +

    For an example, see pui:floatControl or pui:floatPeakRMS.

    PortProtocol is a subclass of lv2:Feature, so UIs use lv2:optionalFeature and @@ -185,3 +185,39 @@ pui:floatControl a pui:PortProtocol; NULL. """. + +pui:floatPeakRMS a pui:PortProtocol; + rdfs:label "Peak and RMS for a period of audio data"; + lv2:documentation """ +

    This port protocol defines a way for the host to send continuous peak +and RMS measurements of the audio signal at a certain port to the UI. The +intended use is visualisation, e.g. an animated meter widget that shows +the level of the audio input or output.

    + +

    A contiguous sequence of audio samples for which a single peak value +and a single RMS value have been computed is called a measurement +period.

    + +

    The rules (see pui:PortProtocol) for this port protocol are:

    +
      +
    1. This PortProtocol is valid for ports with the type lv2:AudioPort.
    2. +
    3. The host SHOULD call port_event() at regular intervals. The measurement + periods used for calls to port_event() for the same port SHOULD be + contiguous (i.e. the measurement period for one call should begin right + after the end of the measurement period for the previous call ends) unless + the UI has removed and re-added the port subscription between those calls. + However, UIs MUST NOT depend on either the regularity of the calls or the + contiguity of the measurement periods; hosts may change the call rate + or skip calls for performance or other reasons. Measurement periods for + different calls to port_event() for the same port MUST NOT overlap. +
    4. The format of the data in the buffer passed to port_event() is a single + LV2_PUI_Peak_RMS_Data object, and the buffer size is + sizeof(LV2_PUI_Peak_RMS_Data).
    5. +
    6. The UI MUST NOT call write_port() with the ID for this port protocol as + the port_protocol parameter.
    7. +
    8. The host MUST ignore any write_port() calls with the ID for this port + protocol as the port_protocol parameter.
    9. +
    10. The data pointer in the LV2_Feature object for this feature should be + NULL.
    11. +
    +""". -- cgit v1.2.1