I’ve been deep diving into the midi-remote api the last few weeks, and I’ve found couple of quirks/issues - they MAY be bugs, perhaps stuff that’s not implemented yet, or just me misunderstanding how things are supposed to work…
OnColorChange for Input channels:
It appears that input channels always have a colour of 0,0,0 and are marked as inActive. I appreciate that input channels don’t have tracks so don’t have a colour, but if they sent the default colour instead then they’d “just work”. Otherwise they need special treatment to make the text readable.
OnCololorChange isn’t sent when you change the colour!!! It gets sent on the next track refresh. This is pretty minor but slightly annoying.
OnTitleChanged activeMapping holds the track name for (normally bound)faders and buttons, but for PushEncoders it just holds “Panner”. This is annoying as the encode assignment is something MCU style mappings change around, so it makes sense to take the assignment name from the EncodeKnob
What is Maxerbanks setFollowVisibility() supposed to do… I assumed that it meant that the included tracks were the same ones that were filtered in the onscreen mixer but that doesn’t seem to be the case. Having an option to use the users onscreen preferences would be great.
There were also a few places where its possible t map to key commands (toggle global automation settings) but then there’s no way to provided the feedback to the desk, so the button led can’t track the onscreen button… I’m assuming stuff like this is somewhere on the todo list and will get added as a HostAccess object someday…
I’m throwing this all out there, more as a record of my experience rather than bug reporting, as I’ve probably missed a few things, or done something stupid. Also I’m still on 12.50 so maybe some stuff has changed in 12.51, but I’ve not updated yet.
Overall the API works really well - When I figured out subpages a whole loads of cool stuff opened up!
Sends and similar are accessed by Index, but the 4 eq bands are accessed by different accessors. I get it makes sense that there are a fixed number of bands, but it means the code has to be written out by hand to access each band. Adding bandAtIndex() to channelEQ would avoid copy pasting code (and future proofs for more than 4 bands).
Is it OK to add/remove channels from the hostBankZone after it’s been mapped? or is it better to create multiple hostBankZones, with different sets of tracks in? Multiple Zones seems to work, but makes some other stuff harder. Adding removing seems OK too, but doesn’t seem to update objects bound to channels in the bank until they’re refreshed for some other reason.
That’s basically what I ended up doing, but it’s way more code than it needs to be,especially when you add Freq, Q, type and on/off -each of which has to be copy-sated 4 times, which creates a maintenance and debug issue.
Being able to access the bands by index (as a future addition) would mean 1/4 as many lines of code to set them up:
var subPageAreaEQBands = page.makeSubPageArea('EQ Bands')
var subPageEQBand={}
for(var i=0;i<4;i++)
{
subPageEQBand[I] = subPageAreaEQBands.makeSubPage('Band '.concat((I+1).toString())
page.makeValueBinding(knob.mSurfaceValue,hostSelTrkEQ.getBand(i).mGain).setSubPage(subPageEQBand[I])
page.makeActionBinding(button[I].mSurfaceValue, subPageEQBand[I].mAction.Activate)
}
Any news on setFollowVisibility @Jochen_Trappe? Really hoping we’ll see this fixed in Cubase 13/Nuendo 13. It would be a big motivator for me to upgrade from Nuendo 12
Dear @Jochen_Trappe - are there any news on this by any chance? Having the setFollowVisibility implemented would really push a range of custom device scripts forward (e.g. the great MCU-style overhaul for the Behringer X-Touch by @bjoluc).
It would be a huge thing if this request could find it’s way from the backlog to the task planning. Many thanks!
Jumping in to beg for channel visibility, @Jochen_Trappe.
I feel like those of us trying to find the ideal control surface simply don’t have a good option with Cubase. If we use MCU, we lose auto banking. If we go midi remote, we lose mix configurations. Truthfully, as a professional composer using this software daily, I need BOTH working.
When do backlog items of this nature tend to get released?
As part of major versions (i.e. Cubase 14) or during incremental fix versions?
Track visibility seems a major omission where MixConsole and Control Room are a significant of the DAW. Reading the history of this thread appears to be an 18+ months teaser.
Considering that all controllers are by nature limited in their ability to control everything in a session, I can’t see how visibility wouldn’t be high on the priority list.
you would think so… but some of these are outstanding since 2022. How many fixes were released in Cubase 13?
Am I right in thinking 2 on the release notes?
I’m just in the middle of updating my mixing and recording templates, so am wondering whether some of these fixes might appear in upcoming fix versions or more likely in Cubase 14?
Ideally both mix configurations and channel visibility agents would be supported. Personally, the main reason I use a control surface is to mix my music from busses, and I usually have about 22 busses to wrangle. So to do a live mix on 8 channels (or 16) I link some of them together and add only one member of the link to a mix config (Basically, a poor man’s VCA. I avoid Cubase’s actual VCA’s due to their wonky implementation).
Anyway - Mackie Protocol does support mix configs, which I need more than auto banking, so I’ll be sticking with that I guess.
This functionality will be a huge productivity boost to my workflow, and I am very excited to see it work someday. Hopefully Steinberg can make it a reality soon!