DB Meter by Neuronaut - Great features, but I need your help to make it better!

neuronaut's icon

Howzit? I'm working on a very simple metering tool. I've attached the compressed max 5 patch below.

Features:
- See the output levels between plugins inside an Instrument or Effects Rack (grouped plugins).
- Monitor levels during freezing!! To see if tracks peak anywhere in the freezing (or mixdown process)
- Frozen tracks retain the meter data which makes it easy to see detail DB info afterwards (find clipping, etc)
- Simple and clean design - it's as small as possible and chromeless

I would like help making it better! :)

Here's a short wish list for now:

- How would I reduce CPU by taking fewer samples per second (a slower refresh rate)?

- How do I receive a message when Ableton starts playing - so that I can reset the meters when play is hit

- How to I communicate with multiple instances? - so I can reset all the meters in every instance when a button is clicked

Also, I'd love to add loudness meters (LUFS), as an option. Can anyone point me in the right direction?

Thanks so much!

Max Patch
Copy patch and select New From Clipboard in Max.

Here's the current version:

Stephane Morisse's icon

About the ableton transport question : you can observe its state through the Live Object Model, then use the result with a sel 1 to reset your meters.

Roman Thilenius's icon

hey :)

- How would I reduce CPU by taking fewer samples per second (a slower refresh rate)?

by downsampling.

- write your process to disk and call it mycoolmeter~

- call it from a mother patch using poly:

[poly~ mycoolmeter~ down 8]

hint: put several channels into one poly~ patcher, or the poly~ will eat up more CPU than what you saved by downsampling the process.

- How to I communicate with multiple instances? – so I can reset all the meters in every instance when a button is clicked

by [send] and [receive].

- add [r #1] to the mycoolmeter~ patch, and connect this receive to trigger the initialisation of your process.

- now give all poly instances which should be linked the same variable name as argument #1, such as

[poly~ mycoolmeter~ down 8 args mycoolmetertotalresetgroup1]
[poly~ mycoolmeter~ down 8 args mycoolmetertotalresetgroup2]

now you can use "bang"-[s mycoolmetertotalresetgroup1] to reset all downsampled processes of group 1.

Also, I’d love to add loudness meters (LUFS), as an option. Can anyone point me in the right direction?

custom code; afaik there are no externeals around which do exaclty that.

-110

neuronaut's icon

Awesome! Thx for the replies! I'm going to play with this now. I'll post an update for anyone who's interested. (I use this meter every day!)