@prefix atom: <http://lv2plug.in/ns/ext/atom#> .
@prefix doap: <http://usefulinc.com/ns/doap#> .
@prefix lv2: <http://lv2plug.in/ns/lv2core#> .
@prefix mda: <http://drobilla.net/plugins/mda/> .
@prefix param: <http://lv2plug.in/ns/ext/parameters#> .
@prefix pg: <http://lv2plug.in/ns/ext/port-groups#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .

<http://drobilla.net/plugins/mda/Piano/env>
	a param:EnvelopeControls ,
		pg:InputGroup ;
	rdfs:label "Envelope" ;
	lv2:symbol "env" .

mda:Piano
	a lv2:Plugin ,
		lv2:InstrumentPlugin ;
	lv2:project mda: ;
	lv2:symbol "Piano" ;
	lv2:microVersion 0 ;
	lv2:minorVersion 2 ;
	doap:name "MDA Piano" ;
	doap:license <http://usefulinc.com/doap/licenses/gpl> ;
	lv2:optionalFeature lv2:hardRTCapable ;
	lv2:requiredFeature <http://lv2plug.in/ns/ext/urid#map> ;
	pg:mainInput mda:mainIn ;
	pg:mainOutput mda:mainOut ;
	lv2:port [
		a lv2:InputPort ,
			lv2:ControlPort ;
		lv2:index 0 ;
		lv2:name "Envelope Decay" ;
		lv2:symbol "env_decay" ;
		lv2:default 0.5 ;
		lv2:minimum 0.0 ;
		lv2:maximum 1.0 ;
		lv2:designation param:decay ;
		pg:group <http://drobilla.net/plugins/mda/Piano/env>
	] , [
		a lv2:InputPort ,
			lv2:ControlPort ;
		lv2:index 1 ;
		lv2:name "Envelope Release" ;
		lv2:symbol "env_release" ;
		lv2:default 0.5 ;
		lv2:minimum 0.0 ;
		lv2:maximum 1.0 ;
		lv2:designation param:release ;
		pg:group <http://drobilla.net/plugins/mda/Piano/env>
	] , [
		a lv2:InputPort ,
			lv2:ControlPort ;
		lv2:index 2 ;
		lv2:name "Hardness Offset" ;
		lv2:symbol "hardness_offset" ;
		lv2:default 0.5 ;
		lv2:minimum 0.0 ;
		lv2:maximum 1.0 ;
		rdfs:comment """Adjusts sample keyranges up or down to change the "size" and brightness of the piano. Use "V" slider to adjust velocity control"""
	] , [
		a lv2:InputPort ,
			lv2:ControlPort ;
		lv2:index 3 ;
		lv2:name "Velocity to Hardness" ;
		lv2:symbol "vel_to_hardness" ;
		lv2:default 0.5 ;
		lv2:minimum 0.0 ;
		lv2:maximum 1.0
	] , [
		a lv2:InputPort ,
			lv2:ControlPort ;
		lv2:index 4 ;
		lv2:name "Muffling Filter" ;
		lv2:symbol "muffling_filter" ;
		lv2:default 0.803 ;
		lv2:minimum 0.0 ;
		lv2:maximum 1.0
	] , [
		a lv2:InputPort ,
			lv2:ControlPort ;
		lv2:index 5 ;
		lv2:name "Velocity to Muffling" ;
		lv2:symbol "vel_to_muffling" ;
		lv2:default 0.251 ;
		lv2:minimum 0.0 ;
		lv2:maximum 1.0
	] , [
		a lv2:InputPort ,
			lv2:ControlPort ;
		lv2:index 6 ;
		lv2:name "Velocity Sensitivity" ;
		lv2:symbol "vel_sensitivity" ;
		lv2:default 0.376 ;
		lv2:minimum 0.0 ;
		lv2:maximum 1.0 ;
		rdfs:comment """Velocity curve: Mid point is normal "square law" response"""
	] , [
		a lv2:InputPort ,
			lv2:ControlPort ;
		lv2:index 7 ;
		lv2:name "Stereo Width" ;
		lv2:symbol "stereo_width" ;
		lv2:default 0.5 ;
		lv2:minimum 0.0 ;
		lv2:maximum 1.0
	] , [
		a lv2:InputPort ,
			lv2:ControlPort ;
		lv2:index 8 ;
		lv2:name "Polyphony" ;
		lv2:symbol "polyphony" ;
		lv2:default 0.33 ;
		lv2:minimum 0.0 ;
		lv2:maximum 1.0 ;
	] , [
		a lv2:InputPort ,
			lv2:ControlPort ;
		lv2:index 9 ;
		lv2:name "Fine Tuning" ;
		lv2:symbol "fine_tuning" ;
		lv2:default 0.5 ;
		lv2:minimum 0.0 ;
		lv2:maximum 1.0
	] , [
		a lv2:InputPort ,
			lv2:ControlPort ;
		lv2:index 10 ;
		lv2:name "Random Detuning" ;
		lv2:symbol "random_detuning" ;
		lv2:default 0.246 ;
		lv2:minimum 0.0 ;
		lv2:maximum 1.0
	] , [
		a lv2:InputPort ,
			lv2:ControlPort ;
		lv2:index 11 ;
		lv2:name "Stretch Tuning" ;
		lv2:symbol "stretch_tuning" ;
		lv2:default 0.5 ;
		lv2:minimum 0.0 ;
		lv2:maximum 1.0
	] , [
		a lv2:OutputPort ,
			lv2:AudioPort ;
		lv2:index 12 ;
		lv2:symbol "left_out" ;
		lv2:name "Left Out" ;
		lv2:designation pg:left ;
		pg:group mda:mainOut
	] , [
		a lv2:OutputPort ,
			lv2:AudioPort ;
		lv2:index 13 ;
		lv2:symbol "right_out" ;
		lv2:name "Right Out" ;
		lv2:designation pg:right ;
		pg:group mda:mainOut
	] , [
		a lv2:InputPort ,
			atom:AtomPort ;
		atom:bufferType atom:Sequence ;
		atom:supports <http://lv2plug.in/ns/ext/midi#MidiEvent> ;
		lv2:index 14 ;
		lv2:symbol "event_in" ;
		lv2:name "Event In"
	] .
