Feature request - real-time master output level in the Lua API?

I’m working on a small Lua testing tool that would visualize track/master output levels as a VU-meter-style bar graph on grid-based MIDI controllers (I have an AKAI APCkey25 - 6x8 LED matrix - and a MIDIPLUS SmartPAD - 8x8 - to test on). The idea is simple: read the signal level, map it to a column height, send the corresponding note-on/velocity messages to light up the right number of LEDs per column.

I went through the API docs (renoise.Track, renoise.DeviceParameter) and also dumped a live Master track with oprint() - as far as I can tell, the API only exposes fader/parameter values (postfx_volume, prefx_volume, etc.), which reflect the set level, not the actual signal level. There doesn’t seem to be anything like output_level, peak_meter, or vu_meter anywhere in the API.

Am I missing something, or does the API genuinely not expose real-time signal metering? If not - would it be feasible to add something like track.output_meter_left/right (even just a lightweight peak value, doesn’t need to be sample-accurate) in a future API version? It would open up a whole category of hardware VU/LED visualizers for grid controllers.

Thanks!

I don’t think so.

In this case, the most obvious thing, I think, should be a value that is notified if it changes (I suppose using a notifier).

I would change the title. The output signal level would be for each track. That is, to be able to translate the track signal levels from the mixer to a tool as accurately as possible.

Something like this would be needed:

  • renoise.song().tracks[i].meter (with _observable) or
  • renoise.song().tracks[i].output_level (with _observable)

I believe this requires access to audio control via the API. Herein lies the problem.

Note: For consistency, if this existed, we should also have access to the value of the master track.