Hi sorry to ask for help twice in one session, hope that's ok. I mostly use Vuo to make audio visualizers and a common problem I encounter is that the final product is just too fast and jittery. Typically I use hold list which creates a frame rate type of effect and this is generally ok. However an alternate, maybe better, approach would be to average the data over a few milliseconds. I tried using process list in conjunction with "smooth with duration" etc but this operates sequentially, so I wouldn't expect that to work. I feel like there could be something obvious I'm missing. Any ideas?

Comments

Hmm, not really... I'm

video piglet's picture
Submitted by

Hmm, not really... I'm starting with a list, potentially hundreds of numbers constantly changing. I want to create a new list which is a real time average of these values. For example an average over 50milliseconds.

Jaymie correct me here if I'm

MartinusMagneson's picture
Submitted by

Jaymie correct me here if I'm wrong!

I looked into this a couple times for the list tools, but I hit a wall since it seems you can't dynamically create instances (the "memory" of a node) for a node. So while you could average a set number of "steps" in a list with a custom node, there would be no way to change it from 4 to 80 "steps" (your averaging timeframe). Vote for lists in lists, it would make this trivial.

But; what is your end goal? There might be some way to do it without averaging lists. Is it mainly audio data you want to smooth?

OK, this should do the trick.

keithlang's picture
Submitted by

OK, this should do the trick.

Although I believe I discovered a bug where Get Table Row returns the inverse Row number. So I've inverted that manually for now.

How to use:

Send your list of values to 'Send data here' Share node. Change the Is Greater Than to be the buffer you want. The output on the right will be an averaged list.