diff options
-rw-r--r-- | ext/cv-port.lv2/cv-port.ttl | 78 | ||||
-rw-r--r-- | ext/cv-port.lv2/manifest.ttl | 9 | ||||
l--------- | ext/cv-port.lv2/waf | 1 | ||||
-rw-r--r-- | ext/cv-port.lv2/wscript | 33 | ||||
-rw-r--r-- | wscript | 1 |
5 files changed, 122 insertions, 0 deletions
diff --git a/ext/cv-port.lv2/cv-port.ttl b/ext/cv-port.lv2/cv-port.ttl new file mode 100644 index 0000000..c9582df --- /dev/null +++ b/ext/cv-port.lv2/cv-port.ttl @@ -0,0 +1,78 @@ +# LV2 CV Port Extension +# Copyright 2011 David Robillard <http://drobilla.net> +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THIS SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +@prefix cv: <http://lv2plug.in/ns/ext/cv-port#> . +@prefix doap: <http://usefulinc.com/ns/doap#> . +@prefix foaf: <http://xmlns.com/foaf/0.1/> . +@prefix lv2: <http://lv2plug.in/ns/lv2core#> . +@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . +@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . + +<http://lv2plug.in/ns/ext/cv-port> + a lv2:Specification ; + doap:license <http://opensource.org/licenses/isc-license> ; + doap:name "LV2 CV Port" ; + doap:maintainer [ + a foaf:Person ; + foaf:name "David Robillard" ; + foaf:homepage <http://drobilla.net/> ; + rdfs:seeAlso <http://drobilla.net/drobilla.rdf> + ] ; + lv2:documentation """ + +This extension defines Control Voltage (CV) ports, which are audio-rate control +ports like those used on classical voltage-controlled synthesizers. These +ports serve as control ports like <a +href="http://lv2plug.in/ns/lv2core#ControlPort">lv2:ControlPort</a> but can +also be used for audio-rate modulation of control signals. This enables many +types of processing and synthesis which are not possible with a lower control +rate. + +""" . + +cv:CVPort + a rdfs:Class ; + rdfs:label "CV Port" ; + rdfs:subClassOf lv2:Port ; + lv2:documentation """ + +Ports of this type have identical semantics to <a +href="http://lv2plug.in/ns/lv2core#AudioPort">lv2:AudioPort</a> in terms of +buffer format and connection/input/output logistics. However, rather than the +buffer representing audio, the buffer represents audio-rate control data. A +CVPort SHOULD have the same properties a <a +href="http://lv2plug.in/ns/lv2core#ControlPort">lv2:ControlPort</a> typically +has to describe appropriate control values (e.g. <a +href="http://lv2plug.in/ns/lv2core#minimum">lv2:minimum</a>, <a +href="http://lv2plug.in/ns/lv2core#maximum">lv2:maximum</a>, <a +href="http://lv2plug.in/ns/lv2core#default">lv2:default</a>) + +Hosts SHOULD take care to prevent data from a CVPort port from being used as +audio except in cases where this is known to be safe. + +Example: +<pre> +<http://example.org/some-plugin> + lv2:port [ + a cv:CVPort, lv2:InputPort ; + lv2:index 0 ; + lv2:minimum -1.0 ; + lv2:maximum 1.0 ; + lv2:default 0.0 ; + lv2:symbol "modulation" ; + lv2:name "Modulation" ; + ] . +</pre> +""" . diff --git a/ext/cv-port.lv2/manifest.ttl b/ext/cv-port.lv2/manifest.ttl new file mode 100644 index 0000000..e5fa145 --- /dev/null +++ b/ext/cv-port.lv2/manifest.ttl @@ -0,0 +1,9 @@ +@prefix lv2: <http://lv2plug.in/ns/lv2core#> . +@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . + +<http://lv2plug.in/ns/ext/cv-port> + a lv2:Specification ; + lv2:minorVersion 0 ; + lv2:microVersion 1 ; + rdfs:seeAlso <cv-port.ttl> . + diff --git a/ext/cv-port.lv2/waf b/ext/cv-port.lv2/waf new file mode 120000 index 0000000..59a1ac9 --- /dev/null +++ b/ext/cv-port.lv2/waf @@ -0,0 +1 @@ +../../waf
\ No newline at end of file diff --git a/ext/cv-port.lv2/wscript b/ext/cv-port.lv2/wscript new file mode 100644 index 0000000..9823edd --- /dev/null +++ b/ext/cv-port.lv2/wscript @@ -0,0 +1,33 @@ +#!/usr/bin/env python +from waflib.extras import autowaf as autowaf +import waflib.Logs as Logs + +# Variables for 'waf dist' +APPNAME = 'lv2-event' +VERSION = '1.2' + +# Mandatory variables +top = '.' +out = 'build' + +def options(opt): + autowaf.set_options(opt) + +def configure(conf): + autowaf.configure(conf) + autowaf.display_msg(conf, "LV2 bundle directory", + conf.env['LV2DIR']) + print('') + +def build(bld): + bld.install_files('${LV2DIR}/event.lv2', + bld.path.ant_glob('*.*')) + + bld.add_post_fun(warn_lv2config) + +def warn_lv2config(ctx): + if ctx.cmd == 'install': + Logs.warn(''' +* LV2 Extension Installed +* You need to run lv2config to update extension headers +''') @@ -50,6 +50,7 @@ def build(bld): ext = ''' atom contexts + cv-port data-access dyn-manifest event |