MIDI Remote API / Stereo metering values

Hi there!

Is there any way I could get the metering values of a channel in STEREO?

The MIDI values come from 00…7F with “Meter All”. And even if the channel is stereo, the source is stereo, I play with the panorama, the only value that comes is a L+R mixed value. The metering is after Pan.

In the MIDI Remote, I tried it as a Lamp, with the value Controller, or even with Pitch Bend (that would be a good solution for stereo metering).

Is there a trick or solution for this? Please let me know! :slight_smile:

Best regards,
Laszlo

Cubase 14, MIDI Remote

Steinberg support told me to write here in connection with this. I have also posted here about this deficiency back in 2020 january… no answer.

And still no answer here :confused:

The trick is to use the getVUChannelMeterByChannelIndex hostvalue.
Have a look at this code, probably it will help:

var midiremote_api = require('midiremote_api_v1')
var deviceDriver = midiremote_api.makeDeviceDriver("Test","VU Meter","mc")

var midiInput = deviceDriver.mPorts.makeMidiInput("anInput")
var midiOutput = deviceDriver.mPorts.makeMidiOutput("anOutput")

var detectionUnit=deviceDriver.makeDetectionUnit()
detectionUnit.detectPortPair(midiInput,midiOutput)
   .expectInputNameEquals("Bome MIDI Translator 1")
   .expectOutputNameEquals("Bome MIDI Translator 1")
    
var surface=deviceDriver.mSurface
var custom1=surface.makeCustomValueVariable("custom1")
var custom2=surface.makeCustomValueVariable("custom2")

var mapping=deviceDriver.mMapping

var page=mapping.makePage("Default")

var vuChannel0=page.mHostAccess.mTrackSelection.mMixerChannel.mValue.getVUChannelMeterByChannelIndex(0)

page.makeValueBinding(custom1,vuChannel0)

vuChannel0.mOnDisplayValueChange=function(activeDevice,activeMapping,dispVal,units){
   console.log("L: "+dispVal)
}

var vuChannel1=page.mHostAccess.mTrackSelection.mMixerChannel.mValue.getVUChannelMeterByChannelIndex(1)

page.makeValueBinding(custom2,vuChannel1)

vuChannel1.mOnDisplayValueChange=function(activeDevice,activeMapping,dispVal,units){
   console.log("R: "+dispVal)
}
2 Likes

Thank you very much! You’re awesome!

1 Like