Forums > MaxMSP

Smoothing/ thinning MIDI inputs

July 15, 2008 | 3:42 pm

Hi all,

As per usual, I’m sure this is a very basic question, I’m just wondering if someone can recommend the easiest way to accomplish something.

I am working on a patch that uses controller input from a Wiimote. However, the Wiimote is very sensitive, and I want to find an easy way to reduce the incoming information. To be more specific, even if I’m holding the Wiimote as still as possible, it still sends streams of controller data, even when the value hasn’t changed.

Is there an easy way to fix this? My thought would be that I only want values to be passed when they CHANGE. I don’t need "94, 94, 94, 94, 93, 93, 93, 93, 92, 92, 92…", I just want "94, 93, 92". I guess what I’m looking for is an easy way to "thin" the data.

I’ve been playing with the ‘if’ object, also ‘zl change’, but nothing seems to work as I want it to. If there were an object similar to ‘!=’ that didn’t output a 1 or 0 but instead let the value pass, I suppose that would work.

Any ideas? I know this is simple, but I don’t know how to do it!

Cheers,
Joel


July 15, 2008 | 3:47 pm

Doesn’t the [change] object do exactly this through its left outlet?


July 15, 2008 | 3:51 pm

You are totally right!

Thanks for this – I just didn’t know where to begin the search.

-joel


July 15, 2008 | 4:01 pm

You could always type "smoothing" into the Max
help window, too – to considerable effect. One
of your advantages as a native speaker of English
is that you have more synonyms at your command than
many of our customers. Things like integrated
docs and search algorithms should be of great
help to the curious and linguistically flexible.


July 15, 2008 | 4:04 pm

Wait! I spoke too soon…

This *almost* works, but it’s still being a bit finicky.

Is there an object similar to ‘quickthresh’ that would ignore messages that happen too close to each other. Something that would prevent retriggering?

Pardon my nOObness…

Cheers,
Joel


July 15, 2008 | 4:26 pm

On 15 juil. 08, at 18:04, joelsquare wrote:

> Wait! I spoke too soon…
>
> This *almost* works, but it’s still being a bit finicky.
>
> Is there an object similar to ‘quickthresh’ that would ignore
> messages that happen too close to each other. Something that would
> prevent retriggering?

speedlim?

ej


Viewing 6 posts - 1 through 6 (of 6 total)