Skip to content

Commit

Permalink
MODify it!
Browse files Browse the repository at this point in the history
  • Loading branch information
x42 committed Aug 8, 2016
1 parent adbce78 commit 92bae11
Show file tree
Hide file tree
Showing 53 changed files with 2,855 additions and 3 deletions.
20 changes: 20 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,9 @@ ifneq ($(XWIN),)
endif

targets+=$(BUILDDIR)$(LV2NAME)$(LIB_EXT)
ifneq ($(MOD),)
targets+=$(BUILDDIR)modgui
endif

###############################################################################
# extract versions
Expand Down Expand Up @@ -86,6 +89,13 @@ $(BUILDDIR)manifest.ttl: manifest.ttl.in ttf.h filters.c
| sed "s/HTTPP/http:\//g;s/HASH/#/g;s/@LV2NAME@/$(LV2NAME)/g;s/@LIB_EXT@/$(LIB_EXT)/g" \
| uniq \
>> $(BUILDDIR)manifest.ttl
ifneq ($(MOD),)
gcc -E -I. -DMX_MODGUI filters.c \
| grep -v '^\#' \
| sed "s/HTTPP/http:\//g;s/HASH/#/g;s/_DASH_/-/g;s/_DOT_/./g;" \
| uniq \
>> $(BUILDDIR)manifest.ttl
endif
for file in presets/*.ttl; do head -n 3 $$file >> $(BUILDDIR)manifest.ttl; echo "rdfs:seeAlso <presets.ttl> ." >> $(BUILDDIR)manifest.ttl; done

$(BUILDDIR)presets.ttl: presets.ttl.in presets/*.ttl
Expand All @@ -109,22 +119,32 @@ $(BUILDDIR)$(LV2NAME)$(LIB_EXT): $(LV2NAME).c midifilter.h filters.c
-shared $(LV2LDFLAGS) $(LDFLAGS) $(LOADLIBES)
$(STRIP) $(STRIPFLAGS) $(BUILDDIR)$(LV2NAME)$(LIB_EXT)

$(BUILDDIR)modgui: modgui/
@mkdir -p $(BUILDDIR)/modgui
cp -r modgui/* $(BUILDDIR)modgui/

# install/uninstall/clean target definitions

install: all
install -d $(DESTDIR)$(LV2DIR)/$(BUNDLE)
install -m755 $(BUILDDIR)$(LV2NAME)$(LIB_EXT) $(DESTDIR)$(LV2DIR)/$(BUNDLE)
install -m644 $(BUILDDIR)manifest.ttl $(BUILDDIR)$(LV2NAME).ttl $(BUILDDIR)presets.ttl $(DESTDIR)$(LV2DIR)/$(BUNDLE)
ifneq ($(MOD),)
install -d $(DESTDIR)$(LV2DIR)/$(BUNDLE)/modgui
install -t $(DESTDIR)$(LV2DIR)/$(BUNDLE)/modgui $(BUILDDIR)modgui/*
endif

uninstall:
rm -f $(DESTDIR)$(LV2DIR)/$(BUNDLE)/manifest.ttl
rm -f $(DESTDIR)$(LV2DIR)/$(BUNDLE)/presets.ttl
rm -f $(DESTDIR)$(LV2DIR)/$(BUNDLE)/$(LV2NAME).ttl
rm -f $(DESTDIR)$(LV2DIR)/$(BUNDLE)/$(LV2NAME)$(LIB_EXT)
rm -rf $(DESTDIR)$(LV2DIR)/$(BUNDLE)/modgui
-rmdir $(DESTDIR)$(LV2DIR)/$(BUNDLE)

clean:
rm -f $(BUILDDIR)manifest.ttl $(BUILDDIR)presets.ttl $(BUILDDIR)$(LV2NAME).ttl $(BUILDDIR)$(LV2NAME)$(LIB_EXT) lv2syms filters.c
rm -rf $(BUILDDIR)modgui
-test -d $(BUILDDIR) && rmdir $(BUILDDIR) || true

.PHONY: clean all install uninstall
7 changes: 4 additions & 3 deletions manifest.ttl.in
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
@prefix lv2: <http://lv2plug.in/ns/lv2core#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix pset: <http://lv2plug.in/ns/ext/presets#> .
@prefix lv2: <http://lv2plug.in/ns/lv2core#> .
@prefix modgui: <http://moddevices.com/ns/modgui#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix pset: <http://lv2plug.in/ns/ext/presets#> .

@prefix mfltplugin: <http://gareus.org/oss/lv2/midifilter#> .
@prefix mfltpreset: <http://gareus.org/oss/lv2/midifilter/presets#> .
Binary file added modgui/dropdown-arrow-black.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added modgui/footswitch.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
76 changes: 76 additions & 0 deletions modgui/icon-cctonote.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
<div class="mod-pedal x42-midifilter{{{cns}}} x42-midi-cctonote">
<div mod-role="drag-handle" class="mod-drag-handle"></div>
<div class="x42-brand"><h1 title="Brought to you by x42.">x42</h1></div>
<div class="x42-plugin-name"><h1>MIDI CC to Note</h1></div>

<div class="mod-light on" mod-role="bypass-light"></div>
<div class="mod-footswitch" mod-role="bypass"></div>

<div class="mod-enum-top-group clearfix">
<div class="mod-control-group mod-enumerated-group bottom float">
<span class="mod-knob-title">Midi Channel</span>
<div class="mod-enumerated" mod-role="input-control-port" mod-port-symbol="channelf" mod-widget="custom-select">
<div mod-role="input-control-value" mod-port-symbol="channelf" class="mod-enumerated-selected"></div>
<div class="mod-enumerated-list">
<div mod-role="enumeration-option" mod-port-value="0">Any</div>
<div mod-role="enumeration-option" mod-port-value="1">1</div>
<div mod-role="enumeration-option" mod-port-value="2">2</div>
<div mod-role="enumeration-option" mod-port-value="3">3</div>
<div mod-role="enumeration-option" mod-port-value="4">4</div>
<div mod-role="enumeration-option" mod-port-value="5">5</div>
<div mod-role="enumeration-option" mod-port-value="6">6</div>
<div mod-role="enumeration-option" mod-port-value="7">7</div>
<div mod-role="enumeration-option" mod-port-value="8">8</div>
<div mod-role="enumeration-option" mod-port-value="9">9</div>
<div mod-role="enumeration-option" mod-port-value="10">10</div>
<div mod-role="enumeration-option" mod-port-value="11">11</div>
<div mod-role="enumeration-option" mod-port-value="12">12</div>
<div mod-role="enumeration-option" mod-port-value="13">13</div>
<div mod-role="enumeration-option" mod-port-value="14">14</div>
<div mod-role="enumeration-option" mod-port-value="15">15</div>
<div mod-role="enumeration-option" mod-port-value="16">16</div>
</div>
</div>
</div>

<div class="mod-control-group mod-enumerated-group bottom float" style="width:260px">
<span class="mod-knob-title">Mode</span>
<div class="mod-enumerated" mod-role="input-control-port" mod-port-symbol="mode" mod-widget="custom-select">
<div mod-role="input-control-value" mod-port-symbol="mode" class="mod-enumerated-selected"></div>
<div class="mod-enumerated-list">
<div mod-role="enumeration-option" mod-port-value="0">Fixed key, velocity = CC-value</div>
<div mod-role="enumeration-option" mod-port-value="1">key = CC-value, fixed velocity (64)</div>
<div mod-role="enumeration-option" mod-port-value="2">All keys, key = parameter, velocity = CC-value</div>
</div>
</div>
</div>
</div>

<div class="mod-control-group top clearfix">
<div class="mod-knob">
<span class="mod-knob-title" title="Control Parameter to intercept">CC Parameter</span>
<div class="mod-knob-m128-image" mod-role="input-control-port" mod-port-symbol="param"></div>
</div>
<div class="mod-knob">
<span class="mod-knob-title" title="Midi Note to use in 'fixed key' mode">Key (Note)</span>
<div class="mod-knob-m128-image" mod-role="input-control-port" mod-port-symbol="key"></div>
</div>
</div>



<div class="mod-pedal-input">
{{#effect.ports.midi.input}}
<div class="mod-input mod-input-disconnected" title="{{name}}" mod-role="input-midi-port" mod-port-symbol="{{symbol}}">
<div class="mod-pedal-input-image"></div>
</div>
{{/effect.ports.midi.input}}
</div>
<div class="mod-pedal-output">
{{#effect.ports.midi.output}}
<div class="mod-output mod-output-disconnected" title="{{name}}" mod-role="output-midi-port" mod-port-symbol="{{symbol}}">
<div class="mod-pedal-output-image"></div>
</div>
{{/effect.ports.midi.output}}
</div>
</div>
42 changes: 42 additions & 0 deletions modgui/icon-channelfilter.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
<div class="mod-pedal x42-midifilter{{{cns}}} x42-midi-channelfilter">
<div mod-role="drag-handle" class="mod-drag-handle"></div>
<div class="x42-brand"><h1 title="Brought to you by x42.">x42</h1></div>
<div class="x42-plugin-name"><h1>MIDI Channel Filter</h1></div>

<div class="mod-light on" mod-role="bypass-light"></div>
<div class="mod-footswitch" mod-role="bypass"></div>

<div class="clearfix top buttongrid">
<div class="togglebtn on" mod-widget="switch" mod-role="input-control-port" mod-port-symbol="chn1">1</div>
<div class="togglebtn on" mod-widget="switch" mod-role="input-control-port" mod-port-symbol="chn2">2</div>
<div class="togglebtn on" mod-widget="switch" mod-role="input-control-port" mod-port-symbol="chn3">3</div>
<div class="togglebtn on" mod-widget="switch" mod-role="input-control-port" mod-port-symbol="chn4">4</div>
<div class="togglebtn on" mod-widget="switch" mod-role="input-control-port" mod-port-symbol="chn5">5</div>
<div class="togglebtn on" mod-widget="switch" mod-role="input-control-port" mod-port-symbol="chn6">6</div>
<div class="togglebtn on" mod-widget="switch" mod-role="input-control-port" mod-port-symbol="chn7">7</div>
<div class="togglebtn on" mod-widget="switch" mod-role="input-control-port" mod-port-symbol="chn8">8</div>
<div class="togglebtn on" mod-widget="switch" mod-role="input-control-port" mod-port-symbol="chn9">9</div>
<div class="togglebtn on" mod-widget="switch" mod-role="input-control-port" mod-port-symbol="chn10">10</div>
<div class="togglebtn on" mod-widget="switch" mod-role="input-control-port" mod-port-symbol="chn11">11</div>
<div class="togglebtn on" mod-widget="switch" mod-role="input-control-port" mod-port-symbol="chn12">12</div>
<div class="togglebtn on" mod-widget="switch" mod-role="input-control-port" mod-port-symbol="chn13">13</div>
<div class="togglebtn on" mod-widget="switch" mod-role="input-control-port" mod-port-symbol="chn14">14</div>
<div class="togglebtn on" mod-widget="switch" mod-role="input-control-port" mod-port-symbol="chn15">15</div>
<div class="togglebtn on" mod-widget="switch" mod-role="input-control-port" mod-port-symbol="chn16">16</div>
</div>

<div class="mod-pedal-input">
{{#effect.ports.midi.input}}
<div class="mod-input mod-input-disconnected" title="{{name}}" mod-role="input-midi-port" mod-port-symbol="{{symbol}}">
<div class="mod-pedal-input-image"></div>
</div>
{{/effect.ports.midi.input}}
</div>
<div class="mod-pedal-output">
{{#effect.ports.midi.output}}
<div class="mod-output mod-output-disconnected" title="{{name}}" mod-role="output-midi-port" mod-port-symbol="{{symbol}}">
<div class="mod-pedal-output-image"></div>
</div>
{{/effect.ports.midi.output}}
</div>
</div>
90 changes: 90 additions & 0 deletions modgui/icon-channelmap.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
<div class="mod-pedal x42-midifilter{{{cns}}} x42-midi-channelmap">
<div mod-role="drag-handle" class="mod-drag-handle"></div>
<div class="x42-brand"><h1 title="Brought to you by x42.">x42</h1></div>
<div class="x42-plugin-name"><h1>MIDI Channelmap</h1></div>

<div class="mod-light on" mod-role="bypass-light"></div>
<div class="mod-footswitch" mod-role="bypass"></div>

<div class="mod-control-group clearfix">
<div class="mod-knob grid16">
<span class="mod-knob-title">Chn 1</span>
<div class="mod-knob-mc17-image" mod-role="input-control-port" mod-port-symbol="chn1"></div>
</div>
<div class="mod-knob grid16">
<span class="mod-knob-title">Chn 2</span>
<div class="mod-knob-mc17-image" mod-role="input-control-port" mod-port-symbol="chn2"></div>
</div>
<div class="mod-knob grid16">
<span class="mod-knob-title">Chn 3</span>
<div class="mod-knob-mc17-image" mod-role="input-control-port" mod-port-symbol="chn3"></div>
</div>
<div class="mod-knob grid16">
<span class="mod-knob-title">Chn 4</span>
<div class="mod-knob-mc17-image" mod-role="input-control-port" mod-port-symbol="chn4"></div>
</div>
<div class="mod-knob grid16">
<span class="mod-knob-title">Chn 5</span>
<div class="mod-knob-mc17-image" mod-role="input-control-port" mod-port-symbol="chn5"></div>
</div>
<div class="mod-knob grid16">
<span class="mod-knob-title">Chn 6</span>
<div class="mod-knob-mc17-image" mod-role="input-control-port" mod-port-symbol="chn6"></div>
</div>
<div class="mod-knob grid16">
<span class="mod-knob-title">Chn 7</span>
<div class="mod-knob-mc17-image" mod-role="input-control-port" mod-port-symbol="chn7"></div>
</div>
<div class="mod-knob grid16">
<span class="mod-knob-title">Chn 8</span>
<div class="mod-knob-mc17-image" mod-role="input-control-port" mod-port-symbol="chn8"></div>
</div>
<div class="mod-knob grid16">
<span class="mod-knob-title">Chn 9</span>
<div class="mod-knob-mc17-image" mod-role="input-control-port" mod-port-symbol="chn9"></div>
</div>
<div class="mod-knob grid16">
<span class="mod-knob-title">Chn 12</span>
<div class="mod-knob-mc17-image" mod-role="input-control-port" mod-port-symbol="chn10"></div>
</div>
<div class="mod-knob grid16">
<span class="mod-knob-title">Chn 11</span>
<div class="mod-knob-mc17-image" mod-role="input-control-port" mod-port-symbol="chn11"></div>
</div>
<div class="mod-knob grid16">
<span class="mod-knob-title">Chn 12</span>
<div class="mod-knob-mc17-image" mod-role="input-control-port" mod-port-symbol="chn12"></div>
</div>
<div class="mod-knob grid16">
<span class="mod-knob-title">Chn 13</span>
<div class="mod-knob-mc17-image" mod-role="input-control-port" mod-port-symbol="chn13"></div>
</div>
<div class="mod-knob grid16">
<span class="mod-knob-title">Chn 14</span>
<div class="mod-knob-mc17-image" mod-role="input-control-port" mod-port-symbol="chn14"></div>
</div>
<div class="mod-knob grid16">
<span class="mod-knob-title">Chn 15</span>
<div class="mod-knob-mc17-image" mod-role="input-control-port" mod-port-symbol="chn15"></div>
</div>
<div class="mod-knob grid16">
<span class="mod-knob-title">Chn 16</span>
<div class="mod-knob-mc17-image" mod-role="input-control-port" mod-port-symbol="chn16"></div>
</div>
</div>

<div class="mod-pedal-input">
{{#effect.ports.midi.input}}
<div class="mod-input mod-input-disconnected" title="{{name}}" mod-role="input-midi-port" mod-port-symbol="{{symbol}}">
<div class="mod-pedal-input-image"></div>
</div>
{{/effect.ports.midi.input}}
</div>
<div class="mod-pedal-output">
{{#effect.ports.midi.output}}
<div class="mod-output mod-output-disconnected" title="{{name}}" mod-role="output-midi-port" mod-port-symbol="{{symbol}}">
<div class="mod-pedal-output-image"></div>
</div>
{{/effect.ports.midi.output}}
</div>
</div>
85 changes: 85 additions & 0 deletions modgui/icon-enforcescale.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
<div class="mod-pedal x42-midifilter{{{cns}}} x42-midi-enforcescale">
<div mod-role="drag-handle" class="mod-drag-handle"></div>
<div class="x42-brand"><h1 title="Brought to you by x42.">x42</h1></div>
<div class="x42-plugin-name"><h1>MIDI Enforce Scale</h1></div>

<div class="mod-light on" mod-role="bypass-light"></div>
<div class="mod-footswitch" mod-role="bypass"></div>

<div class="mod-enum-top-group clearfix">
<div class="mod-control-group mod-enumerated-group bottom float">
<span class="mod-knob-title">Midi Channel</span>
<div class="mod-enumerated" mod-role="input-control-port" mod-port-symbol="channelf" mod-widget="custom-select">
<div mod-role="input-control-value" mod-port-symbol="channelf" class="mod-enumerated-selected"></div>
<div class="mod-enumerated-list">
<div mod-role="enumeration-option" mod-port-value="0">Any</div>
<div mod-role="enumeration-option" mod-port-value="1">1</div>
<div mod-role="enumeration-option" mod-port-value="2">2</div>
<div mod-role="enumeration-option" mod-port-value="3">3</div>
<div mod-role="enumeration-option" mod-port-value="4">4</div>
<div mod-role="enumeration-option" mod-port-value="5">5</div>
<div mod-role="enumeration-option" mod-port-value="6">6</div>
<div mod-role="enumeration-option" mod-port-value="7">7</div>
<div mod-role="enumeration-option" mod-port-value="8">8</div>
<div mod-role="enumeration-option" mod-port-value="9">9</div>
<div mod-role="enumeration-option" mod-port-value="10">10</div>
<div mod-role="enumeration-option" mod-port-value="11">11</div>
<div mod-role="enumeration-option" mod-port-value="12">12</div>
<div mod-role="enumeration-option" mod-port-value="13">13</div>
<div mod-role="enumeration-option" mod-port-value="14">14</div>
<div mod-role="enumeration-option" mod-port-value="15">15</div>
<div mod-role="enumeration-option" mod-port-value="16">16</div>
</div>
</div>
</div>

<div class="mod-control-group mod-enumerated-group bottom float" style="width:100px">
<span class="mod-knob-title">Scale</span>
<div class="mod-enumerated" mod-role="input-control-port" mod-port-symbol="scale" mod-widget="custom-select">
<div mod-role="input-control-value" mod-port-symbol="scale" class="mod-enumerated-selected"></div>
<div class="mod-enumerated-list">
<div mod-role="enumeration-option" mod-port-value="0">C Major</div>
<div mod-role="enumeration-option" mod-port-value="1">C# Major</div>
<div mod-role="enumeration-option" mod-port-value="2">D Major</div>
<div mod-role="enumeration-option" mod-port-value="3">D# Major</div>
<div mod-role="enumeration-option" mod-port-value="4">E Major</div>
<div mod-role="enumeration-option" mod-port-value="5">F Major</div>
<div mod-role="enumeration-option" mod-port-value="6">F# Major</div>
<div mod-role="enumeration-option" mod-port-value="7">G Major</div>
<div mod-role="enumeration-option" mod-port-value="8">G# Major</div>
<div mod-role="enumeration-option" mod-port-value="9">A Major</div>
<div mod-role="enumeration-option" mod-port-value="10">A# Major</div>
<div mod-role="enumeration-option" mod-port-value="11">B Major</div>
</div>
</div>
</div>

<div class="mod-control-group mod-enumerated-group bottom float" style="width:100px">
<span class="mod-knob-title">Out of Key</span>
<div class="mod-enumerated" mod-role="input-control-port" mod-port-symbol="mode" mod-widget="custom-select">
<div mod-role="input-control-value" mod-port-symbol="mode" class="mod-enumerated-selected"></div>
<div class="mod-enumerated-list">
<div mod-role="enumeration-option" mod-port-value="0">Discard</div>
<div mod-role="enumeration-option" mod-port-value="1">Always down</div>
<div mod-role="enumeration-option" mod-port-value="2">Always up</div>
</div>
</div>
</div>

</div>

<div class="mod-pedal-input">
{{#effect.ports.midi.input}}
<div class="mod-input mod-input-disconnected" title="{{name}}" mod-role="input-midi-port" mod-port-symbol="{{symbol}}">
<div class="mod-pedal-input-image"></div>
</div>
{{/effect.ports.midi.input}}
</div>
<div class="mod-pedal-output">
{{#effect.ports.midi.output}}
<div class="mod-output mod-output-disconnected" title="{{name}}" mod-role="output-midi-port" mod-port-symbol="{{symbol}}">
<div class="mod-pedal-output-image"></div>
</div>
{{/effect.ports.midi.output}}
</div>
</div>
Loading

0 comments on commit 92bae11

Please sign in to comment.