Floaty is a weird delay based around a “tape loop” but with independent play and record heads. It’s a bit crazy and can get into some mad self-oscillation but also does really subtle chorused washes as well. And it can go backwards. And wobbly.
Paranoia is inspired by the OTO Biscuit resampler/bitcrusher hardware.
Has a bitcrusher, resampler, two saturation stages, a multi-mode filter, and a bitflipper (“thermonuclear war”).
Does insane, terrifying digital distortion. WARNING: can get very loud.
Avocado is a gating glitcher - it splits up input into chunks and plays them back if there is silence, so you get chunky tails of whatever you played last.
Mud is derived from the filter section of Paranoia and does two things - it’s either a fixed bandpass filter, or the filter section can modulate which can do either slow sweeping effects or a vintage-sounding univibe thing.
These have been adapted to minimize knobs for live tweaking - e.g. 3 filter controls are compressed into one combined knob that cycles through cutoff/resonance/mode combinations.
I’ve been after a pedal platform to port those to for nearly a decade (e.g. http://remaincalm.org/index.php/2008/08 )
Being able to run those as part of a live rig is awesome. So, huge thanks for making this possible.
Floaty can go very pretty with some settings.
Paranoia is really horrible in an extremely deliberate and planned way. At the right level it can really work great in a mix though - e.g. there’s tons of it on this track: https://danielarena.bandcamp.com/track/20110109-2011
I have at least one other plugin I’m going to port to LV2 soon - a glitcher/stutter thing that has a couple of really unique properties.
Are there any resources/docs/templates on getting a UI built?
so, i’ve been busy - i have two more plugins basically ready to go, and i’m in the final stages of parameter range tuning and optimization. they’re sounding good.
but i am really struggling with the UI side of things - i tried following the UI instructions from the wiki on the docker build image, and i am running into a stack of issues. i also can’t find a good template to build off - is there a bare-bones wireframe i could clone?
i struggled with some of the other environment stuff but i got there with that, the UI is just eluding me at the moment. any guidance would be hugely appreciated. thanks!
Next I sym-linked ..../floaty/source/build/floaty.lv2 to ~/.lv2/floaty.lv2 (that is the default writable per-user LV2_PATH).
Double checked with lv2ls | grep float that it’s found and used jalv.gtk http://remaincalm.org/plugins/floaty to test if it runs (not really needed but hey).
I then launched mod-sdk’s development-server (in my case not in docker, but locally, it’s easy to compile, see its README). pointed a web-browser at localhost:9000… selected the plugin from the dropdown and launched the “Wizard”…
After a few clicks (color & knob-style selection) it left me with ~/.lv2/floaty.modgui Those files will have to be copied back to the plugin-source. Eventually they’ll have to end up in ../floaty/source/build/floaty.lv2/
It’s a standard MOD UI template (HTML, CSS, images) that just works and a great starting point for manual html/css/js tweaks.
PS. I can’t seem to attach .zip files here… http://robin.linuxaudio.org/tmp/floaty.modgui.zip is the generated modgui.
If you have any question, don’t hesitate to ask. Would be useful to know where exactly you’re stuck, what’s on top of the “stack of issues” ?
awesome, thanks! it’s late here now but i’ll check it out soon.
most recent plugin code is here: https://github.com/remaincalm/dpfports
it’s in desperate need of a refactor - i need to move both the param handling and the processing into their own classes and there’s a ton of math calculated every cycle that doesn’t need it. docs are out of date as well. apologies, most of that code has been smashed out after 10pm.
the code needs the dpf folder copied into the appropriate spots. the two newer plugins are ‘mud’ (LFO bandpass filter) and ‘avocado’ (gated glitcher).
issues i ran into included:
general issues getting docker running on my windows box
a couple of failed attempts at getting a local dev environment working (was going to try and target both VST and LV2, gave up on the former)
docker image i was using didn’t work properly until i re-ran the bootstrap script to get it working.
make clean doesn’t actually clean up everything left over from the build script in the docker image. i’ve gotten burnt by old code a few times
running make in the source folder builds for x86, not ARM, and everything silently fails after that, this is compounded by me not knowing exactly what needs to be scrubbed to get a clean environment
i just have a bunch of scripts now that pull source in from the local-mod-folder in my windows environment (where i’m editing the files) into the docker image, delete everything that got previously generated, build everything and deploy everything to the device, so i can turn around code pretty fast. but it stumped me for a little while.
oh, and - yeah, has anyone confirmed being able to get the mod-gui development server running under the docker image? i tried following the instructions and there’s a bunch of stuff that doesn’t really work. it’s probably something simple i’m missing.
OK, I use neither the docker image, nor Windows. So I can’t really comment on this. Hopefully someone else can jump in.
[quote]running make in the source folder builds for x86, not ARM[/quote] That is perfectly normal and expected. The default for most (if not all) build environments is to build it for the local machine (you can test run it there). The mod-plugin-builder (which reads the .mk) will set up cross-compile for ARM.
still some issues - UI wizard works, but screenshot generate chokes from within docker image with:
QXcbConnection: Could not connect to display
PhantomJS has crashed. Please read the bug reporting guide at http://phantomjs.org/bug-reporting.html and file a bug report.
ERROR:tornado.application:Uncaught exception GET /screenshot?uri=http%3A%2F%2Fremaincalm.org%2Fplugins%2Ffloaty&width=230&height=431 (192.168.99.1)
HTTPServerRequest(protocol=‘http’, host=‘192.168.99.100:9000’, method=‘GET’, uri=’/screenshot?uri=http%3A%2F%2Fremaincalm.org%2Fplugins%2Ffloaty&width=230&height=431’, version=‘HTTP/1.1’, remote_ip=‘192.168.99.1’, headers={‘Accept’: ‘application/json, text/javascript, /; q=0.01’, ‘Connection’: ‘keep-alive’, ‘Host’: ‘192.168.99.100:9000’, ‘Accept-Encoding’: ‘gzip, deflate’, ‘Accept-Language’: ‘en-US,en;q=0.5’, ‘Referer’: ‘http://192.168.99.100:9000/’, ‘X-Requested-With’: ‘XMLHttpRequest’, ‘User-Agent’: ‘Mozilla/5.0 (Windows NT 10.0; WOW64; rv:50.0) Gecko/20100101 Firefox/50.0’})
Traceback (most recent call last):
File “/usr/lib/python3/dist-packages/tornado/web.py”, line 1369, in _stack_context_handle_exception
raise_exc_info((type, value, traceback))
File “”, line 3, in raise_exc_info
File “/usr/lib/python3/dist-packages/tornado/stack_context.py”, line 314, in wrapped
ret = fn(*args, **kwargs)
File “/usr/local/lib/python3.5/dist-packages/modsdk/webserver.py”, line 387, in proc_callback
fh = open(fname, ‘rb’)
FileNotFoundError: [Errno 2] No such file or directory: '/tmp/cab837.png’
ERROR:tornado.access:500 GET /screenshot?uri=http%3A%2F%2Fremaincalm.org%2Fplugins%2Ffloaty&width=230&height=431 (192.168.99.1) 35.56ms
i tried chmodding /tmp 777 but didn’t fix it. wondering if i should chase this up in a separate thread?
pedal UIs don’t have hints yet (most knobs do a couple of things, often very different behaviors at knob = 12’oclock, left half, right half)
floaty sometimes goes weird - warp can send the playback head way over the wrong side of the record head. i think i’ve fixed this but not sure.
floaty goes silent on time change (this also recovers the pedal from the previous step) - it should actually update the play speed until it catches up to the right buffer length
mud is too grungy
filter param values might still change on all pedals
avocado controls don’t really do what they’re meant to yet