@prefix doap:      <http://usefulinc.com/ns/doap#> .
@prefix dc:        <http://purl.org/dc/terms/> .
@prefix foaf:      <http://xmlns.com/foaf/0.1/> .
@prefix rdf:       <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs:      <http://www.w3.org/2000/01/rdf-schema#> .
@prefix lv2:       <http://lv2plug.in/ns/lv2core#> .
@prefix lv2ext:    <http://lv2plug.in/ns/ext/> .
@prefix pp:        <http://lv2plug.in/ns/ext/port-props#> .
@prefix pg:        <http://lv2plug.in/ns/ext/port-groups#> .
@prefix ui:        <http://lv2plug.in/ns/extensions/ui#> .
@prefix units:     <http://lv2plug.in/ns/extensions/units#> .
@prefix atom:      <http://lv2plug.in/ns/ext/atom#> .
@prefix urid:      <http://lv2plug.in/ns/ext/urid#> .
@prefix opts:      <http://lv2plug.in/ns/ext/options#> .
@prefix rsz:       <http://lv2plug.in/ns/ext/resize-port#> .
@prefix time:      <http://lv2plug.in/ns/ext/time#> .
@prefix hcid:      <http://harrisonconsoles.com/lv2/inlinedisplay#> .
@prefix lsp:       <http://lsp-plug.in/plugins/lv2/> .
@prefix lsp_pg:    <http://lsp-plug.in/plugins/lv2/sc_compressor_ms/port_groups#> .
@prefix lsp_ui:    <http://lsp-plug.in/ui/lv2/> .
@prefix lsp_dev:   <http://lsp-plug.in/developers/> .


lsp_dev:v_sadovnikov
	a foaf:Person ;
	foaf:name "Vladimir Sadovnikov" ;
	foaf:nick "SadKo" ;
	foaf:mbox <mailto:lsp.plugin@gmail.com> ;
	foaf:homepage <http://lsp-plug.in/#v_sadovnikov>
	.

lsp_dev:lsp
	a foaf:Person ;
	foaf:name "LSP LV2" ;
	foaf:homepage <http://lsp-plug.in/#lsp>
	.

lsp_pg:stereo_in
	a pg:StereoGroup, pg:InputGroup ;
	lv2:symbol "stereo_in";
	rdfs:label "Stereo Input"
	.

lsp_pg:stereo_out
	a pg:StereoGroup, pg:OutputGroup ;
	lv2:symbol "stereo_out";
	rdfs:label "Stereo Output"
	.

lsp_pg:sidechain_in
	a pg:StereoGroup, pg:InputGroup ;
	pg:sideChainOf lsp_pg:stereo_in;
	lv2:symbol "sidechain_in";
	rdfs:label "Sidechain Input"
	.

lsp:sc_compressor_ms
	a lv2:Plugin, doap:Project, lv2:DynamicsPlugin, lv2:CompressorPlugin ;
	doap:name "Sidechain Compressor MidSide - Sidechain-Kompressor MidSide" ;
	lv2:minorVersion 0 ;
	lv2:microVersion 1 ;
	doap:developer lsp_dev:v_sadovnikov ;
	doap:maintainer lsp_dev:lsp ;
	doap:license "LSP (Linux Studio Plugins)" ;
	lv2:binary <lsp-plugins-lv2.so> ;
	ui:ui lsp_ui:sc_compressor_ms ;

	lv2:requiredFeature urid:map ;
	lv2:optionalFeature lv2:hardRTCapable, hcid:queue_draw ;
	opts:supportedOption ui:updateRate ;
	dc:replaces <urn:ladspa:5002097> ;

	lv2:port [
		a lv2:InputPort, lv2:AudioPort ;
		lv2:index 0 ;
		lv2:symbol "in_l" ;
		lv2:name "Input L" ;
		pg:group lsp_pg:stereo_in ;
		lv2:designation pg:left ;
	] , [
		a lv2:InputPort, lv2:AudioPort ;
		lv2:index 1 ;
		lv2:symbol "in_r" ;
		lv2:name "Input R" ;
		pg:group lsp_pg:stereo_in ;
		lv2:designation pg:right ;
	] , [
		a lv2:OutputPort, lv2:AudioPort ;
		lv2:index 2 ;
		lv2:symbol "out_l" ;
		lv2:name "Output L" ;
		pg:group lsp_pg:stereo_out ;
		lv2:designation pg:left ;
	] , [
		a lv2:OutputPort, lv2:AudioPort ;
		lv2:index 3 ;
		lv2:symbol "out_r" ;
		lv2:name "Output R" ;
		pg:group lsp_pg:stereo_out ;
		lv2:designation pg:right ;
	] , [
		a lv2:InputPort, lv2:AudioPort ;
		lv2:index 4 ;
		lv2:symbol "sc_l" ;
		lv2:name "Sidechain input Left" ;
		pg:group lsp_pg:sidechain_in ;
		lv2:designation pg:left ;
	] , [
		a lv2:InputPort, lv2:AudioPort ;
		lv2:index 5 ;
		lv2:symbol "sc_r" ;
		lv2:name "Sidechain input Right" ;
		pg:group lsp_pg:sidechain_in ;
		lv2:designation pg:right ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 6 ;
		lv2:symbol "bypass" ;
		lv2:name "Bypass" ;
		lv2:portProperty lv2:toggled ;
		lv2:minimum 0 ;
		lv2:maximum 1 ;
		lv2:default 0 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 7 ;
		lv2:symbol "g_in" ;
		lv2:name "Input gain" ;
		units:unit [
			a units:Unit ;
			rdfs:label "gain" ;
			units:symbol "G" ;
			units:render "%f G" ;
		] ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 10.000000 ;
		lv2:default 1.000000 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 8 ;
		lv2:symbol "g_out" ;
		lv2:name "Output gain" ;
		units:unit [
			a units:Unit ;
			rdfs:label "gain" ;
			units:symbol "G" ;
			units:render "%f G" ;
		] ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 10.000000 ;
		lv2:default 1.000000 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 9 ;
		lv2:symbol "pause" ;
		lv2:name "Pause graph analysis" ;
		lv2:portProperty lv2:toggled ;
		lv2:minimum 0 ;
		lv2:maximum 1 ;
		lv2:default 0 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 10 ;
		lv2:symbol "clear" ;
		lv2:name "Clear graph analysis" ;
		lv2:portProperty lv2:toggled ;
		lv2:minimum 0 ;
		lv2:maximum 1 ;
		lv2:default 0 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 11 ;
		lv2:symbol "msl" ;
		lv2:name "Mid/Side listen" ;
		lv2:portProperty lv2:toggled ;
		lv2:minimum 0 ;
		lv2:maximum 1 ;
		lv2:default 0 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 12 ;
		lv2:symbol "sct_m" ;
		lv2:name "Sidechain type Mid" ;
		lv2:portProperty lv2:integer, lv2:enumeration, pp:hasStrictBounds ;
		lv2:scalePoint
			[ rdfs:label "Feed-forward"; rdf:value 0 ] ,
			[ rdfs:label "Feed-back"; rdf:value 1 ] ,
			[ rdfs:label "External"; rdf:value 2 ] ;
		lv2:minimum 0 ;
		lv2:maximum 2 ;
		lv2:default 0 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 13 ;
		lv2:symbol "scm_m" ;
		lv2:name "Sidechain mode Mid" ;
		lv2:portProperty lv2:integer, lv2:enumeration, pp:hasStrictBounds ;
		lv2:scalePoint
			[ rdfs:label "Peak"; rdf:value 0 ] ,
			[ rdfs:label "RMS"; rdf:value 1 ] ,
			[ rdfs:label "Low-Pass"; rdf:value 2 ] ,
			[ rdfs:label "Uniform"; rdf:value 3 ] ;
		lv2:minimum 0 ;
		lv2:maximum 3 ;
		lv2:default 1 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 14 ;
		lv2:symbol "sla_m" ;
		lv2:name "Sidechain lookahead Mid" ;
		units:unit units:ms ;
		lv2:portProperty pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 20.000000 ;
		lv2:default 0.000000 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 15 ;
		lv2:symbol "scl_m" ;
		lv2:name "Sidechain listen Mid" ;
		lv2:portProperty lv2:toggled ;
		lv2:minimum 0 ;
		lv2:maximum 1 ;
		lv2:default 0 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 16 ;
		lv2:symbol "scs_m" ;
		lv2:name "Sidechain source Mid" ;
		lv2:portProperty lv2:integer, lv2:enumeration, pp:hasStrictBounds ;
		lv2:scalePoint
			[ rdfs:label "Middle"; rdf:value 0 ] ,
			[ rdfs:label "Side"; rdf:value 1 ] ,
			[ rdfs:label "Left"; rdf:value 2 ] ,
			[ rdfs:label "Right"; rdf:value 3 ] ;
		lv2:minimum 0 ;
		lv2:maximum 3 ;
		lv2:default 0 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 17 ;
		lv2:symbol "scr_m" ;
		lv2:name "Sidechain reactivity Mid" ;
		units:unit units:ms ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 250.000000 ;
		lv2:default 10.000000 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 18 ;
		lv2:symbol "scp_m" ;
		lv2:name "Sidechain preamp Mid" ;
		units:unit [
			a units:Unit ;
			rdfs:label "gain" ;
			units:symbol "G" ;
			units:render "%f G" ;
		] ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 100.000000 ;
		lv2:default 1.000000 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 19 ;
		lv2:symbol "sct_s" ;
		lv2:name "Sidechain type Side" ;
		lv2:portProperty lv2:integer, lv2:enumeration, pp:hasStrictBounds ;
		lv2:scalePoint
			[ rdfs:label "Feed-forward"; rdf:value 0 ] ,
			[ rdfs:label "Feed-back"; rdf:value 1 ] ,
			[ rdfs:label "External"; rdf:value 2 ] ;
		lv2:minimum 0 ;
		lv2:maximum 2 ;
		lv2:default 0 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 20 ;
		lv2:symbol "scm_s" ;
		lv2:name "Sidechain mode Side" ;
		lv2:portProperty lv2:integer, lv2:enumeration, pp:hasStrictBounds ;
		lv2:scalePoint
			[ rdfs:label "Peak"; rdf:value 0 ] ,
			[ rdfs:label "RMS"; rdf:value 1 ] ,
			[ rdfs:label "Low-Pass"; rdf:value 2 ] ,
			[ rdfs:label "Uniform"; rdf:value 3 ] ;
		lv2:minimum 0 ;
		lv2:maximum 3 ;
		lv2:default 1 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 21 ;
		lv2:symbol "sla_s" ;
		lv2:name "Sidechain lookahead Side" ;
		units:unit units:ms ;
		lv2:portProperty pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 20.000000 ;
		lv2:default 0.000000 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 22 ;
		lv2:symbol "scl_s" ;
		lv2:name "Sidechain listen Side" ;
		lv2:portProperty lv2:toggled ;
		lv2:minimum 0 ;
		lv2:maximum 1 ;
		lv2:default 0 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 23 ;
		lv2:symbol "scs_s" ;
		lv2:name "Sidechain source Side" ;
		lv2:portProperty lv2:integer, lv2:enumeration, pp:hasStrictBounds ;
		lv2:scalePoint
			[ rdfs:label "Middle"; rdf:value 0 ] ,
			[ rdfs:label "Side"; rdf:value 1 ] ,
			[ rdfs:label "Left"; rdf:value 2 ] ,
			[ rdfs:label "Right"; rdf:value 3 ] ;
		lv2:minimum 0 ;
		lv2:maximum 3 ;
		lv2:default 0 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 24 ;
		lv2:symbol "scr_s" ;
		lv2:name "Sidechain reactivity Side" ;
		units:unit units:ms ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 250.000000 ;
		lv2:default 10.000000 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 25 ;
		lv2:symbol "scp_s" ;
		lv2:name "Sidechain preamp Side" ;
		units:unit [
			a units:Unit ;
			rdfs:label "gain" ;
			units:symbol "G" ;
			units:render "%f G" ;
		] ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 100.000000 ;
		lv2:default 1.000000 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 26 ;
		lv2:symbol "cm_m" ;
		lv2:name "Compression mode Mid" ;
		lv2:portProperty lv2:integer, lv2:enumeration, pp:hasStrictBounds ;
		lv2:scalePoint
			[ rdfs:label "Down"; rdf:value 0 ] ,
			[ rdfs:label "Up"; rdf:value 1 ] ;
		lv2:minimum 0 ;
		lv2:maximum 1 ;
		lv2:default 0 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 27 ;
		lv2:symbol "al_m" ;
		lv2:name "Attack level Mid" ;
		units:unit [
			a units:Unit ;
			rdfs:label "gain" ;
			units:symbol "G" ;
			units:render "%f G" ;
		] ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.001000 ;
		lv2:maximum 1.000000 ;
		lv2:default 0.251190 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 28 ;
		lv2:symbol "at_m" ;
		lv2:name "Attack time Mid" ;
		units:unit units:ms ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 2000.000000 ;
		lv2:default 20.000000 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 29 ;
		lv2:symbol "rrl_m" ;
		lv2:name "Relative release level Mid" ;
		units:unit [
			a units:Unit ;
			rdfs:label "gain" ;
			units:symbol "G" ;
			units:render "%f G" ;
		] ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 1.000000 ;
		lv2:default 0.000000 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 30 ;
		lv2:symbol "rt_m" ;
		lv2:name "Release time Mid" ;
		units:unit units:ms ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 5000.000000 ;
		lv2:default 100.000000 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 31 ;
		lv2:symbol "cr_m" ;
		lv2:name "Ratio Mid" ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 1.000000 ;
		lv2:maximum 100.000000 ;
		lv2:default 4.000000 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 32 ;
		lv2:symbol "kn_m" ;
		lv2:name "Knee Mid" ;
		units:unit [
			a units:Unit ;
			rdfs:label "gain" ;
			units:symbol "G" ;
			units:render "%f G" ;
		] ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.063100 ;
		lv2:maximum 1.000000 ;
		lv2:default 0.501180 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 33 ;
		lv2:symbol "mk_m" ;
		lv2:name "Makeup gain Mid" ;
		units:unit [
			a units:Unit ;
			rdfs:label "gain" ;
			units:symbol "G" ;
			units:render "%f G" ;
		] ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.001000 ;
		lv2:maximum 1000.000000 ;
		lv2:default 1.000000 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 34 ;
		lv2:symbol "cdr_m" ;
		lv2:name "Dry gain Mid" ;
		units:unit [
			a units:Unit ;
			rdfs:label "gain" ;
			units:symbol "G" ;
			units:render "%f G" ;
		] ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 10.000000 ;
		lv2:default 0.000000 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 35 ;
		lv2:symbol "cwt_m" ;
		lv2:name "Wet gain Mid" ;
		units:unit [
			a units:Unit ;
			rdfs:label "gain" ;
			units:symbol "G" ;
			units:render "%f G" ;
		] ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 10.000000 ;
		lv2:default 1.000000 ;
	] , [
		a lv2:OutputPort, lv2:ControlPort ;
		lv2:index 36 ;
		lv2:symbol "rl_m" ;
		lv2:name "Release level Mid" ;
		units:unit [
			a units:Unit ;
			rdfs:label "gain" ;
			units:symbol "G" ;
			units:render "%f G" ;
		] ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 20.000000 ;
		lv2:default 0.000000 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 37 ;
		lv2:symbol "slv_m" ;
		lv2:name "Sidechain level visibility Mid" ;
		lv2:portProperty lv2:toggled ;
		lv2:minimum 0 ;
		lv2:maximum 1 ;
		lv2:default 1 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 38 ;
		lv2:symbol "elv_m" ;
		lv2:name "Envelope level visibility Mid" ;
		lv2:portProperty lv2:toggled ;
		lv2:minimum 0 ;
		lv2:maximum 1 ;
		lv2:default 1 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 39 ;
		lv2:symbol "grv_m" ;
		lv2:name "Gain reduction visibility Mid" ;
		lv2:portProperty lv2:toggled ;
		lv2:minimum 0 ;
		lv2:maximum 1 ;
		lv2:default 1 ;
	] , [
		a lv2:OutputPort, lv2:ControlPort ;
		lv2:index 40 ;
		lv2:symbol "slm_m" ;
		lv2:name "Sidechain level meter Mid" ;
		units:unit [
			a units:Unit ;
			rdfs:label "gain" ;
			units:symbol "G" ;
			units:render "%f G" ;
		] ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 15.848930 ;
		lv2:default 0.000000 ;
	] , [
		a lv2:OutputPort, lv2:ControlPort ;
		lv2:index 41 ;
		lv2:symbol "clm_m" ;
		lv2:name "Curve level meter Mid" ;
		units:unit [
			a units:Unit ;
			rdfs:label "gain" ;
			units:symbol "G" ;
			units:render "%f G" ;
		] ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 15.848930 ;
		lv2:default 0.000000 ;
	] , [
		a lv2:OutputPort, lv2:ControlPort ;
		lv2:index 42 ;
		lv2:symbol "elm_m" ;
		lv2:name "Envelope level meter Mid" ;
		units:unit [
			a units:Unit ;
			rdfs:label "gain" ;
			units:symbol "G" ;
			units:render "%f G" ;
		] ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 15.848930 ;
		lv2:default 0.000000 ;
	] , [
		a lv2:OutputPort, lv2:ControlPort ;
		lv2:index 43 ;
		lv2:symbol "rlm_m" ;
		lv2:name "Reduction level meter Mid" ;
		units:unit [
			a units:Unit ;
			rdfs:label "gain" ;
			units:symbol "G" ;
			units:render "%f G" ;
		] ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 251.188614 ;
		lv2:default 1.000000 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 44 ;
		lv2:symbol "cm_s" ;
		lv2:name "Compression mode Side" ;
		lv2:portProperty lv2:integer, lv2:enumeration, pp:hasStrictBounds ;
		lv2:scalePoint
			[ rdfs:label "Down"; rdf:value 0 ] ,
			[ rdfs:label "Up"; rdf:value 1 ] ;
		lv2:minimum 0 ;
		lv2:maximum 1 ;
		lv2:default 0 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 45 ;
		lv2:symbol "al_s" ;
		lv2:name "Attack level Side" ;
		units:unit [
			a units:Unit ;
			rdfs:label "gain" ;
			units:symbol "G" ;
			units:render "%f G" ;
		] ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.001000 ;
		lv2:maximum 1.000000 ;
		lv2:default 0.251190 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 46 ;
		lv2:symbol "at_s" ;
		lv2:name "Attack time Side" ;
		units:unit units:ms ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 2000.000000 ;
		lv2:default 20.000000 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 47 ;
		lv2:symbol "rrl_s" ;
		lv2:name "Relative release level Side" ;
		units:unit [
			a units:Unit ;
			rdfs:label "gain" ;
			units:symbol "G" ;
			units:render "%f G" ;
		] ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 1.000000 ;
		lv2:default 0.000000 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 48 ;
		lv2:symbol "rt_s" ;
		lv2:name "Release time Side" ;
		units:unit units:ms ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 5000.000000 ;
		lv2:default 100.000000 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 49 ;
		lv2:symbol "cr_s" ;
		lv2:name "Ratio Side" ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 1.000000 ;
		lv2:maximum 100.000000 ;
		lv2:default 4.000000 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 50 ;
		lv2:symbol "kn_s" ;
		lv2:name "Knee Side" ;
		units:unit [
			a units:Unit ;
			rdfs:label "gain" ;
			units:symbol "G" ;
			units:render "%f G" ;
		] ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.063100 ;
		lv2:maximum 1.000000 ;
		lv2:default 0.501180 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 51 ;
		lv2:symbol "mk_s" ;
		lv2:name "Makeup gain Side" ;
		units:unit [
			a units:Unit ;
			rdfs:label "gain" ;
			units:symbol "G" ;
			units:render "%f G" ;
		] ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.001000 ;
		lv2:maximum 1000.000000 ;
		lv2:default 1.000000 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 52 ;
		lv2:symbol "cdr_s" ;
		lv2:name "Dry gain Side" ;
		units:unit [
			a units:Unit ;
			rdfs:label "gain" ;
			units:symbol "G" ;
			units:render "%f G" ;
		] ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 10.000000 ;
		lv2:default 0.000000 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 53 ;
		lv2:symbol "cwt_s" ;
		lv2:name "Wet gain Side" ;
		units:unit [
			a units:Unit ;
			rdfs:label "gain" ;
			units:symbol "G" ;
			units:render "%f G" ;
		] ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 10.000000 ;
		lv2:default 1.000000 ;
	] , [
		a lv2:OutputPort, lv2:ControlPort ;
		lv2:index 54 ;
		lv2:symbol "rl_s" ;
		lv2:name "Release level Side" ;
		units:unit [
			a units:Unit ;
			rdfs:label "gain" ;
			units:symbol "G" ;
			units:render "%f G" ;
		] ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 20.000000 ;
		lv2:default 0.000000 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 55 ;
		lv2:symbol "slv_s" ;
		lv2:name "Sidechain level visibility Side" ;
		lv2:portProperty lv2:toggled ;
		lv2:minimum 0 ;
		lv2:maximum 1 ;
		lv2:default 1 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 56 ;
		lv2:symbol "elv_s" ;
		lv2:name "Envelope level visibility Side" ;
		lv2:portProperty lv2:toggled ;
		lv2:minimum 0 ;
		lv2:maximum 1 ;
		lv2:default 1 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 57 ;
		lv2:symbol "grv_s" ;
		lv2:name "Gain reduction visibility Side" ;
		lv2:portProperty lv2:toggled ;
		lv2:minimum 0 ;
		lv2:maximum 1 ;
		lv2:default 1 ;
	] , [
		a lv2:OutputPort, lv2:ControlPort ;
		lv2:index 58 ;
		lv2:symbol "slm_s" ;
		lv2:name "Sidechain level meter Side" ;
		units:unit [
			a units:Unit ;
			rdfs:label "gain" ;
			units:symbol "G" ;
			units:render "%f G" ;
		] ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 15.848930 ;
		lv2:default 0.000000 ;
	] , [
		a lv2:OutputPort, lv2:ControlPort ;
		lv2:index 59 ;
		lv2:symbol "clm_s" ;
		lv2:name "Curve level meter Side" ;
		units:unit [
			a units:Unit ;
			rdfs:label "gain" ;
			units:symbol "G" ;
			units:render "%f G" ;
		] ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 15.848930 ;
		lv2:default 0.000000 ;
	] , [
		a lv2:OutputPort, lv2:ControlPort ;
		lv2:index 60 ;
		lv2:symbol "elm_s" ;
		lv2:name "Envelope level meter Side" ;
		units:unit [
			a units:Unit ;
			rdfs:label "gain" ;
			units:symbol "G" ;
			units:render "%f G" ;
		] ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 15.848930 ;
		lv2:default 0.000000 ;
	] , [
		a lv2:OutputPort, lv2:ControlPort ;
		lv2:index 61 ;
		lv2:symbol "rlm_s" ;
		lv2:name "Reduction level meter Side" ;
		units:unit [
			a units:Unit ;
			rdfs:label "gain" ;
			units:symbol "G" ;
			units:render "%f G" ;
		] ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 251.188614 ;
		lv2:default 1.000000 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 62 ;
		lv2:symbol "ilv_m" ;
		lv2:name "Input level visibility Mid" ;
		lv2:portProperty lv2:toggled ;
		lv2:minimum 0 ;
		lv2:maximum 1 ;
		lv2:default 1 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 63 ;
		lv2:symbol "olv_m" ;
		lv2:name "Output level visibility Mid" ;
		lv2:portProperty lv2:toggled ;
		lv2:minimum 0 ;
		lv2:maximum 1 ;
		lv2:default 1 ;
	] , [
		a lv2:OutputPort, lv2:ControlPort ;
		lv2:index 64 ;
		lv2:symbol "ilm_m" ;
		lv2:name "Input level meter Mid" ;
		units:unit [
			a units:Unit ;
			rdfs:label "gain" ;
			units:symbol "G" ;
			units:render "%f G" ;
		] ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 3.981070 ;
		lv2:default 0.000000 ;
	] , [
		a lv2:OutputPort, lv2:ControlPort ;
		lv2:index 65 ;
		lv2:symbol "olm_m" ;
		lv2:name "Output level meter Mid" ;
		units:unit [
			a units:Unit ;
			rdfs:label "gain" ;
			units:symbol "G" ;
			units:render "%f G" ;
		] ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 3.981070 ;
		lv2:default 0.000000 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 66 ;
		lv2:symbol "ilv_s" ;
		lv2:name "Input level visibility Side" ;
		lv2:portProperty lv2:toggled ;
		lv2:minimum 0 ;
		lv2:maximum 1 ;
		lv2:default 1 ;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 67 ;
		lv2:symbol "olv_s" ;
		lv2:name "Output level visibility Side" ;
		lv2:portProperty lv2:toggled ;
		lv2:minimum 0 ;
		lv2:maximum 1 ;
		lv2:default 1 ;
	] , [
		a lv2:OutputPort, lv2:ControlPort ;
		lv2:index 68 ;
		lv2:symbol "ilm_s" ;
		lv2:name "Input level meter Side" ;
		units:unit [
			a units:Unit ;
			rdfs:label "gain" ;
			units:symbol "G" ;
			units:render "%f G" ;
		] ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 3.981070 ;
		lv2:default 0.000000 ;
	] , [
		a lv2:OutputPort, lv2:ControlPort ;
		lv2:index 69 ;
		lv2:symbol "olm_s" ;
		lv2:name "Output level meter Side" ;
		units:unit [
			a units:Unit ;
			rdfs:label "gain" ;
			units:symbol "G" ;
			units:render "%f G" ;
		] ;
		lv2:portProperty pp:logarithmic, pp:hasStrictBounds ;
		lv2:minimum 0.000000 ;
		lv2:maximum 3.981070 ;
		lv2:default 0.000000 ;
	] , [
		a lv2:InputPort, atom:AtomPort ;
		atom:bufferType atom:Sequence ;
		atom:supports atom:Sequence, time:Position ;
		lv2:designation lv2:control ;
		lv2:index 70 ;
		lv2:symbol "in_ui" ;
		lv2:name "UI Input" ;
		rdfs:comment "UI -> DSP communication" ;
		rsz:minimumSize 13312 ;
	] , [
		a lv2:OutputPort, atom:AtomPort ;
		atom:bufferType atom:Sequence ;
		atom:supports atom:Sequence, time:Position ;
		lv2:designation lv2:control ;
		lv2:index 71 ;
		lv2:symbol "out_ui" ;
		lv2:name "UI Output" ;
		rdfs:comment "DSP -> UI communication" ;
		rsz:minimumSize 107520 ;
	] , [
		a lv2:OutputPort, lv2:ControlPort ;
		lv2:index 72 ;
		lv2:symbol "out_latency" ;
		lv2:name "Latency OUT" ;
		rdfs:comment "DSP -> Host latency report" ;
		lv2:portProperty pp:hasStrictBounds ;
		lv2:portProperty lv2:integer ;
		lv2:portProperty lv2:reportsLatency ;
		lv2:minimum 0 ;
		lv2:maximum 192000 ;
		lv2:default 0 ;
	]
	.

lsp_ui:sc_compressor_ms
	a ui:X11UI ;
	lv2:minorVersion 0 ;
	lv2:microVersion 1 ;
	lv2:requiredFeature urid:map, ui:idleInterface ;
	lv2:optionalFeature ui:parent, ui:resize, ui:noUserResize, lv2ext:instance-access ;
	lv2:extensionData ui:idleInterface ;
	ui:binary <lsp-plugins-lv2.so> ;

	ui:portNotification [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 6 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 7 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 8 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 9 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 10 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 11 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 12 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 13 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 14 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 15 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 16 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 17 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 18 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 19 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 20 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 21 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 22 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 23 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 24 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 25 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 26 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 27 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 28 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 29 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 30 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 31 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 32 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 33 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 34 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 35 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 36 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 37 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 38 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 39 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 40 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 41 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 42 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 43 ;
		ui:protocol ui:peakProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 44 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 45 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 46 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 47 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 48 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 49 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 50 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 51 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 52 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 53 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 54 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 55 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 56 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 57 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 58 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 59 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 60 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 61 ;
		ui:protocol ui:peakProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 62 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 63 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 64 ;
		ui:protocol ui:peakProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 65 ;
		ui:protocol ui:peakProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 66 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 67 ;
		ui:protocol ui:floatProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 68 ;
		ui:protocol ui:peakProtocol ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 69 ;
		ui:protocol ui:peakProtocol ;
	]  , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 70 ;
		ui:protocol atom:eventTransfer ;
		ui:notifyType atom:Sequence ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 71 ;
		ui:protocol atom:eventTransfer ;
		ui:notifyType atom:Sequence ;
	] , [
		ui:plugin lsp:sc_compressor_ms ;
		ui:portIndex 72 ;
		ui:protocol ui:floatProtocol ;
	]
	.

