Creative thinking needed (?), retrieve track names from Cubase to MIDI or OSC

Hi,

I’m trying to solve something I’d very much like to have in my setup.

Is there any way to retrieve the name or track number from Cubase so I can read it from an external application/over network/MIDI/something?

Ideally I’d like to have some way to either send a specific MIDI cc or just a set value per track in Cubase, or get some way to retrieve the track name/number over OSC.

Long term plans is to be able to present the selected name clearly on an external display that isn’t necessarily where I keep my computer running Cubase.

I have quite an intricate MIDI (and OSC) setup, and I’d like to make use of it well, so being able to read the selected Cubase track somehow would help me a lot.

I’m not opposed to using a 3rd party plugin that does something clever to help me out here.

I appreciate any kind of help or ideas here. I know there are Lemur things that gets the track name somehow, and also Softube Console 1 retrieves the track names… I’d very much like to be able to do the same somehow.

Hi,

I’musing Mackie Control protocol for this. It’s restricted to 8 characters only, but it’s the only free way, I discovered.

2 Likes

This could work actually.
I currently use a mackie control device (Behringer X-Touch), so I think there might be an issue if I run 2 Mackie devices?

That’s a really good suggestion though, I’ll look into the possibility of reading the message stream that gets sent though and maybe taking advantage of this somehow…

Thank you again, I’ll report back here if I get something clever done here.

One upcoming “issue” with it is that I’ll have to manage banking somehow, but if I can do something with the messages going in and out with MIDI I might be able to do something creatively.

Hi,

Yes, if you would use 2 Mackie Control devices, Cubase would “glue” them, so you would get bank of 16 channels.

For the display, Mackie Control protocol is using SysEx messages.

Just wanted to say thanks again, as you got me into a good direction.
I can see all the track names in the sysex message now, and as a bonus here, I think I might be able to combine this with another thing that bothers me… mackie controller auto-banking.

I’m going to keep working on something this weekend, and with some luck I’ll have something that reads track names, as well as does automatic selection of the right bank on my hw controller that follows Cubase. The latter was a good bonus as I was reading MIDI data from Mackie Control.

Hi there,

Did you manage to get this working? And where I’m most interested is did you manage, or do you know a way to get round the 8 character limit and send the full track name?

I didn’t really, no.
I wound up writing my own hack for hijacking the way mackie controllers worked though, just to do automatic banking.
In said mackie sysex you do get that 8 char track name though. I do wish there was a good way to get around this.

Hi,

You can listen, what does Mackie Control protocol prints to the Mackie hardware display. It’s 7 (if I remember right) characters from the track name.

Thanks yes.

I was hoping that someone had solved getting more than the first few characters of the track name out of cubase using midi or sysex or something.

Using the MCU implementation you can grab the full track name from the EQ, Send, Plugin or CStrip views for the selected track.

It starts midway across the screen on the second line if I can recall correctly, so looks centre aligned- but it’s not, it’s a fixed starting position, about 15-20 characters from left. So easy to grab.

Depends what scripts you can run on that SysEx data, of course. But if you can parse into a string there’s a good 25-30 characters there which is enough for most track names.

I put the note numbers on this diagram if you’re not sure which note numbers swap between EQ/Send/Plugin mode:-

I sent Note 44, Channel 1 to quickly swap to EQ mode to read it. Never done anything with it though, spent too much time doing crap like this when I should just be making music. :slight_smile:

2 Likes

Thought this might be of internet here:

Reading cubase track names using sysex

1 Like

Just following up on this - we’ve managed to implement reading the track names in Open Stage Control when using the Mackie MCU and reading the sysex but we’ve hit a stumbling block.

It seems that the MCU protocol attempts to save bytes when sending the track names by not resending duplicates of its already sent part of the name, so this slowly trims down the names.

Has anyone got any idea how to force a full name each time?!

Ah there are some oddities like that. If you go to Master FX/MFX (Note 81) then back to EQ (Note 44) it should send the whole string - Try that?

Thanks - report back is that doesn’t work -Going to try again later tho, any other ideas?

How does the unit know which bits to leave on the display and which bits to change to the byte-efficient new partially formed name I wonder?!

So just reporting back again.

After much trial and error, and by climbing up some very steep learning curves of MCU protocol, midi sysex, JavaScript and node.js we’ve managed to get it to work. We can now get the full track names out of cubase and use them to define functions and other exciting touch controller functionality using OSC.

Oh really?
How do you get the names? When I was scanning through the sysex last year I struggled finding the full names, and just those chopped off ones that go on the display of the mackie controllers.

Sorry I should clarify - you can have a track name of up to 29 characters- anything more than that gets truncated down to 29.

Still, pretty useable.

Hi,

This combination sounds like Cycling '74 MAX to me.

1 Like

How do you retrieve it if I may ask?
I.e. do you have an example of the sysex message? I’m very curious about this for my own use as well in some custom scripts :slight_smile:

Have a look here - early iteration of the script. Not had a chance to post a more recent version but this should give you a starting point.

3 Likes