Glad I found this one! Can be very valuable for a project I have in mind.
Long story short (for now): would you have insight on tweaking mscale so that it moves to a valid note instead of filtering it out?
Come to think of it… Based on your description, it might be a more specific issue having to do with my setup… I’m using a MIDI controller which sends legato notes. When I go from a valid note to one outside the scale, it just stops playing instead of moving up or down to a valid note.
I’m still very inexperienced with Pd so I’m having a difficult time understanding how the object does its magic. Which object does what? I’m outputting numbers everywhere to tell how things work. Really puzzled when it comes to the second [moses] object
It sounds like you’re splitting the incoming note’s “pitch class” (0–11) from the octave, you filter that using the list, and then you add back the octave to send out the note if it’s valid.
Is that right?
Now… how can I prevent the MIDI stream from cutting?
Been using the Pisound HAT for close to a year. Originally bought one (took a while to get to me), played with it for a while. Ordered a second one after realizing that it was a pretty important tool for me. (Paid for the fast shipping, second time around.)
One Pisound-based setup is focused on MODEP (MOD Emulation for Pisound). Used it on several occasions, including during a Drone Day jam recently. The other is more of a music-focused Raspbian install, with Sonic Pi as a key piece of the puzzle but some Pd patches here and there.
The Pisound has quite a bit going for it. Not the least expensive, and some might argue that other platforms can give you similar results for cheaper but… Blokas has done a great job to integrate things, hardware and software. Those knobs are quite convenient. Even the single button on it is quite useful. The community is small but healthy. And there’s a whole lot to be said about MODEP, given how “plug and play” it is. There aren’t that many LV2 plugins available, but it’s more than enough to have quite a bit of fun without having to set things up every time.
The “normal” Raspbian setup allows you to boot directly into a given Pd patch or switch them around using a USB key. Haven’t really played with that but that’s a pretty neat feature.
Now that MIDI Polyphonic Expression is part of the official spec (and that the documentation is available with a free membership in the MIDI Association), it might make sense to revisit this topic. Anyone has an update on ways to support full MPE?
Max7 already has decent support, especially for ROLI devices. One issue with Pd tends to be how to handle polyphony, so having a kind of tutorial might help.
Will check that rudimentary patch by @formuls. Sounds interesting.
It does sound nice, quite literally. The sound performance is very good and it greatly decreases latency. Which can really help with Pd on the Pi. The idea for “the button” is quite neat. Haven’t used a USB key to load patches but that’s also a neat idea.
Though Pd runs very smoothly on it, MODEP has become my favourite dimension of this HAT. It’s a way to host LV2 plugins and arrange them on pedalboards using patch cords (sounds familiar?). The interface (MOD UI) is through a web server. So you can use any device running a browser to change pedalboards. Tweakings knobs and such doesn’t work well on iOS, but it’s still really useful to run the device headless and have an iPad to change your “patches”.
Sure, it’s not the cheapest device around. Investing quite. bit of time, someone with soldering and coding skills can make a version of this with less money. Same thing can be said about the Organelle, the MOD Duo, etc.
But, as an integrated solution, Blokas pisound is really very neat.
Speaking of making a low-cost Organelle clone, anyone has insight?
Sounds like this project works with all the patches from the Critter & Guitari repo.
There are some Pd externals on the C&G Github, but it sounds like they mostly use Pd Vanilla.
To me, the advantage of such a device is that the pre-made patches are supposed to just work. For instance, it sounds like their patches are polyphonic, which means less fiddling with poly.
From there, it could be easy to understand how the patches work. And the fact that Automatonism has some support can also prove useful.
So... Something like this could be particularly nice in teaching. Even if it’s on a breadboard with leads all tangled up.
Got a couple of Raspberry Pi boards with assorted sensors and actuators. Apart from a good audio HAT, it sounds like it wouldn’t take much to put one of these things together.
@whale-av Thanks, David! Much easier to understand and it does work. Got the overall idea but not the actual patching.
Trying to focus on Vanilla without externals, in part to make it work on PdParty and/or MobMuPlat.
If it weren’t for that bug, oscparse would be fine for my needs (only UDP, not doing much with the messaging except getting the data into a slider).
@whale-av Hello David! Thanks for the reply. A bit confused about this, still.
So, here’s a message sent by TouchOSC:
list page4 multifader1 1 0.193394
My attempt at routing this…
[oscparse] | [list trim] | [route page4] | [route multifader1] | [makefilename %d] | | [route foo]
Getting the error:
makefilename: no method for '1'
Might have misunderstood the patching itself, though.
Here’s what it looks like in Pd.
Thanks for pointing this out! This issue was making me question things endlessly. Using Pd Vanilla 0.46.7 on macOS connected to TouchOSC. Using oscparse works well and route works as expected with symbols. But, in the Simple layout, TouchOSC begins most of its messages with page numbers so it was impossible for me to route them. Tried with another layout, which has sliders named without page numbers and it worked.
Hope it’s been solved since then. (Thought my version was the latest and release notes since 0.46.7 don’t show anything about oscparse, but you never know.)
Played a bit with Automatonism. Really neat as an intro to Pd!
Did notice that Johan put several effects on there, including stuff like Bitcrush and Wavefold which affect the sound to make it dirtier. But it doesn’t really have one for overdrive/fuzz/distortion.
Maybe this will help?
They do mention for the fuzz example that a more realistic one could be achieved with waveshaping (which is something Automatonism does do in some modules (at least in the Bandwidth limited oscillator). So, if you’re not getting the fuzz you want, you might find some answer there. But it’s probably a good idea to start mangling the sound with the existing “sound processors” modules. Don’t forget that you can send one into another for added complexity. Everything in Automatonism is at audio rate.
Sorry if this isn’t the straight answer you wanted. Surely, some Pd experts will have much better insight. Just wanted to chime in as it helps me in my own experimentations.
Oh, and this might be inspiring: