diff options
author | cbdev <cb@cbcdn.com> | 2019-07-06 17:25:12 +0200 |
---|---|---|
committer | cbdev <cb@cbcdn.com> | 2019-07-06 17:25:12 +0200 |
commit | b618c4a6b74a52f830ca53029e1cc680d56a2501 (patch) | |
tree | 6da5459b45db4448936cb8f0225490b9f5135b1e /configs/demo.lua | |
parent | ee75bee08b8fb280fc1d76e8635cf29c576835da (diff) | |
download | midimonster-b618c4a6b74a52f830ca53029e1cc680d56a2501.tar.gz midimonster-b618c4a6b74a52f830ca53029e1cc680d56a2501.tar.bz2 midimonster-b618c4a6b74a52f830ca53029e1cc680d56a2501.zip |
Implement Lua backend
Diffstat (limited to 'configs/demo.lua')
-rw-r--r-- | configs/demo.lua | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/configs/demo.lua b/configs/demo.lua new file mode 100644 index 0000000..e816ac4 --- /dev/null +++ b/configs/demo.lua @@ -0,0 +1,21 @@ +-- This example MIDIMonstaer Lua script spreads one input channel onto multiple output +-- channels using a polynomial function evaluated at multiple points. This effect can +-- be visualized e.g. with martrix (https://github.com/cbdevnet/martrix). + +-- This is just a demonstration of global variables +foo = 0 + +-- The polynomial to evaluate +function polynomial(offset, x) + return math.exp(-20 * (x - offset) ^ 2) +end + +-- Handler function for the input channel +function input(value) + foo = foo + 1 + print("input at ", value, foo) + + for chan=0,10 do + output("out" .. chan, polynomial(value, (1 / 10) * chan)) + end +end |