Synth Forum

Notifications
Clear all

Is it possible to send MIDI out to Cubase for "real-time" playing but send sequenced MIDI straight to the internal tone generator?

7 Posts
2 Users
0 Reactions
5,974 Views
Liam
 Liam
Posts: 0
Active Member
Topic starter
 

I'd like to do these two things simultaneously. It would be incredibly useful. Here's two setting-combinations I've tried in song mode much to my disappointment:

local control=off
track int switch=all on
track ext switch=all on
SEQ settings MIDI filter=all MIDI out checked

local control=off
track int switch=all on
track ext switch=all off
SEQ settings MIDI filter=all MIDI out unchecked

We all understand the concept of local control. If local control is on, then "real-time" playing generates MIDI that is sent straight to the tone generator. If it's off, then the same "real-time" playing bypasses the tone generator and is sent via MIDI out. The track int switch apparently is meant to determine whether or not sequenced data is sent directly to the tone generator. As far as I can tell, this switch works as expected. And given it's behaviour and description in the reference manual, it's totally distinct from local control. The track ext switch however... I'm baffled. Isn't it supposed to do the same as track int but with MIDI sent out via MIDI out? It seems like whenever I toggle it, it cuts off the "real-time" MIDI as well as the sequenced MIDI. The MIDI filter in SEQ settings, to my understanding, lies in-between the sequencer and the tone generator. The manual even shows a diagram that shows this. So it should really have no effect on "real-time" keyboard-playing.

To keep it simple, I'll number my questions and keep them easy:

1. Is my understanding of these parameters correct?
2. Are there any parameters I'm forgetting that could make a useful difference?
3. Is it even possible? Perhaps it was intentionally designed not to be.
4. Why does the track ext switch affect "real-time" playing? Couldn't we just use local control for that?
5. I'm currently using USB-MIDI (port 1), not traditional MIDI cabling. Does this make a difference?

 
Posted : 05/11/2015 4:38 pm
Bad Mister
Posts: 12303
 

More than likely what you want to do is possible, however, it is not clear (from your post) if you are attempting to use both the XF sequencer and Cubase at the same time... and it is not clear which version of Cubase you are using AI? Pro 8? These things will determine the answer.

Before we go into explanations about the INT and EXT SWITCHES and Local Control and all, it would help to know exactly what you mean when you say: "...send sequenced data straight to the internal tone generator." Do you mean from Cubase or from the Motif XF's own sequencer?

 
Posted : 06/11/2015 1:26 am
Liam
 Liam
Posts: 0
Active Member
Topic starter
 

To clarify, I'm using Cubase 8 Pro and yes I'm trying to get both the Cubase sequencer and the XF sequencer to play back MIDI together. I'd like to be able to play the XF to record MIDI into Cubase, and also be able to manually insert MIDI data into the XF's sequencer by using the EDIT or JOB functions.

Currently, I've been using the manual equivalent of the XF's "quick setup" for "recording sequencer to computer" and have also set up the XF to receive MIDI clock. So as you can imagine, both Cubase's sequencer and the XF's sequencer play back at the same time, and Cubase's recorded MIDI data triggers the appropriate voices on the XF when configured correctly. I totally understand this process. But unfortunately, it only works if you sequence MIDI in Cubase's sequencer alone. If you enter in any MIDI data into the XF's sequencer, you end up not being able to record into Cubase without Cubase also recording the XF's sequenced data. Under the hood, this makes sense, because the XF outputs it's own sequenced MIDI data through USB-MIDI port 1, the said MIDI data gets recorded into Cubase, and upon playback, you get doubling on the selected track. The doubling is there because the same MIDI is being played by both the XF and Cubase sequencers. Cubase will send it's MIDI straight to the XF and trigger the tone generator. All the while, the XF will send it's MIDI data out to Cubase, Cubase will reflect it back to the XF, and will trigger the tone-generator. Therefore you get the doubling.

So my dream goal here, is to see if I can separate the XF sequencer's MIDI from "real-time" key-pressing MIDI generation, in order to prevent doubling after recording. Then I'd be able to play the XF "real-time" when recording MIDI into Cubase, yet not have to worry about Cubase also receiving data from the XF's sequencer.

In the end, it comes down to the possibilities and the ideals of the XF. Is it possible to separate the two? If it isn't, the only reasonable solution would be for Cubase to distinguish between incoming "XF sequenced MIDI" and "XF live MIDI". But due to the nature of MIDI, I doubt that's possible in Cubase without using different channels or device numbers between the two types.

 
Posted : 06/11/2015 4:20 pm
Bad Mister
Posts: 12303
 

In the end, it comes down to the possibilities and the ideals of the XF. Is it possible to separate the two? If it isn't, the only reasonable solution would be for Cubase to distinguish between incoming "XF sequenced MIDI" and "XF live MIDI". But due to the nature of MIDI, I doubt that's possible in Cubase without using different channels or device numbers between the two types.

Thank you for further explaining your situation. But of course, this can be accomplished. Although it is still not clear why you are not simply sequencing in Cubase Pro 8 entirely. But not for me to wonder why but for me to answer your question...

I did not dive into the answer initially, because, as I suggested, the answer is different for Cubase AI than it would be for Cubase Pro 8... And I just didn't want to sound like I was attempting to upgrade you to Cubase Pro 8... since you already have it, relax... here's what you need to do (and why):

We all understand the concept of local control. If local control is on, then "real-time" playing generates MIDI that is sent straight to the tone generator. If it's off, then the same "real-time" playing bypasses the tone generator and is sent via MIDI out.

Well, yes, but MIDI goes to the MIDI OUT ports in both cases. When LOCAL CONTROL is ON, the Motif XF keyboard triggers the internal tone engine but also generates MIDI data for use externally or to its own sequencer. The internal connection does not necessarily use MIDI to communicate with the internal tone engine until you activate the sequencer.

The MIDI data that is generated, is for external use (or used in the sequencer) and is generated on the MIDI Transmit Channel according to the setting of the XF.

When Local Control is OFF, the XF keyboard and its controllers send the MIDI commands OUT via MIDI, you are to "echo back" the data from your external destination (using the active track in Cubase to determine which device and which MIDI channel responds). A MIDI Track in Cubase is typically set to receive any incoming MIDI and what it does is it "channelizes" the data on a specific Channel as set in the Track Inspector. That MIDI Channel setting in the Track Inspector simply takes the incoming data and redirects it on the indicated MIDI Port and Channel.

The track int switch apparently is meant to determine whether or not sequenced data is sent directly to the tone generator.

The Track INT SW of the Motif XF is for the SONG/PATTERN MIXING mode, where the instrument is in multi-timbral/multi-MIDI channel mode. When using the internal sequencer the key presses and controller movements are routed through the *active* XF Sequencer Track and the data goes to the PART (or PARTS) assigned to the Channel as set for that XF Track. If you have three PARTS assigned to MIDI receive on Channel 1 and you press the TRACK [1] button, while the INT SW is ON and the TX CH is 1, then all three PARTS will respond to your playing. You are transmitting THROUGH the Track to the tone generator on the MIDI Channel set for the track. The Track "Channelizes" the data and all receiving PARTS set to the channel will respond. SO both INT and EXT switches must be ON for you to record to the Internal Sequencer (the primary function).

The track ext switch however... I'm baffled. Isn't it supposed to do the same as track int but with MIDI sent out via MIDI out?

The EXT SW determines if data routed to and data coming from the internal sequencer is transmitted OUT, at all. This includes the incoming XF keys/controllers, and the out-going data recorded on the XF Track.

The MIDI filter in SEQ settings, to my understanding, lies in-between the sequencer and the tone generator.

Correct. It is the data recorded to the Track that will be Filtered. The SEQ MIDI FILTER only filters data recorded to the XF's own sequencer.

SOLUTIONS:
If you have Cubase Pro 8 use the INPUT TRANSFORMER to have Cubase Filter all but the MIDI channel you are playing on "live"
The INPUT TRANSFORMER icon found on the TRACK INSPECTOR (circled in red below) allows you setup your Track so it only receives data from the MIDI Channel you are transmitting into Cubase.

Let's assume you are playing PART 1 on Track 1... meaning you are probably Transmitting on MIDI Channel 1 to Cubase...
By setting the Track's INPUT TRANSFORMER to only receive data coming IN on MIDI Channel 1, it will dutifully ignore your other Motif XF tracks - which will not "echo-back" to the Motif XF - they will simply play from the Motif XF as normal. The information you are generating by playing the keyboard and moving the controllers will be recorded to Cubase, as you desire.

The INPUT TRANSFORMER is set to FUNCTION = FILTER (bottom center), the first module is ON (lit blue),the FILTER TYPE = Channel, Unequal to Channel 1 (so only data transmitted on the MIDI channel you set will be received and echoed by this Cubase MIDI Track. The other Motif XF tracks will simply play as per normal...

There is no "Quick Setup" template for this (rather unusual) task, but this should not stop you from accomplishing this.

In the Motif XF:
Start with QUICK SETUP 1 (Stand alone) and we'll edit as necessary from here.
Press [UTILITY]
Press [F5] CONTROL
Press [SF2] MIDI
Set LOCAL CONTROL = OFF
Set MIDI IN/OUT = USB
Set MIDI SYNC = AUTO
Set SEQUENCER CONTROL = IN

Make sure Cubase Pro 8 is set to send MIDI Clock to the Motif XF (Port 1)... TRANSPORT > PROJECT SYNCHRONIZATION SETUP > MIDI CLOCK OUT > Motif XF Port 1

Extra Credit:
What is typical of MIDI is that every MIDI Channel Event (which includes things like Note-Ons, Pitch Bend, Controllers like MW, FC, Sustain, etc., etc) includes the MIDI Channel of origin. When you press middle "C" your message is: B0 3C 64 which translates to a Note-On (B), on MIDI Channel 1 (0), middle C is Note 60 (3C), at a velocity of 100 (64).

When this is recorded to a MIDI Track all of that information is documented. This is why it takes only one MIDI Track to record all 16 MIDI Channels... the data remains discreet even if on a single Track. We separate it simply because it makes it easier to EDIT. So a Cubase MIDI track will rechannelize the data it records - that is the Channel setting you see on the Track Inspector... no matter what Channel it came in on, the Track re-channelizes it and directs in on a specific PORT to whatever device you desire.

So when you have a Track open and all the Tracks of the Motif XF are transmitting AND being received by Cubase - you have the situation that prompted your question. By setting the Cubase MIDI Track to ignore all but the single MIDI channel you wish to actually record, you solve your problem.

When you wish to transfer all 16 Tracks from the Motif XF to Cubase, for example, you would only create a single MIDI Track and set the MIDI Channel = "ANY" (literally, "any") this allows the incoming data to be echoed back on the channel it came in on... Remember a normal MIDI Track is designed to record all incoming MIDI data (regardless of the channel)... typically you record one track at a time, on after the other, thus the name SEQUENCING - one after the other. In a situation where you want to record more than one thing discreetly - set the MIDI Channel to "ANY".

Hope that helps.

 
Posted : 06/11/2015 6:48 pm
Liam
 Liam
Posts: 0
Active Member
Topic starter
 

First of all, thanks for explaining track INT and EXT switches. Much easier to understand in comparison to the reference manual. As for the solution you gave, it does work. But in order for it to work, you have to use two separate channels for something I was hoping could be accomplished on just one. So yes, it does stop MIDI data on the XF's sequencer from being recorded into Cubase. But only if that data is transmitted on a separate channel from the channel "real-time" live MIDI data is transmitted on. In other words, I need to use another track on the XF to transmit via another channel to Cubase.

I devised a workaround using your train of thought:

XF SEQ track 1: TxCh 1 ---> MIDI Out ---> Cubase SEQ MIDI track 1 "input-transformed to filter all channels unequal to 1": Transmit on channel 1 ---> MIDI Thru (on "live" playing) / MIDI Out (on Cubase sequencer "play") ---> XF Part receiving on channel 1 ---> Tone generation
XF SEQ track 2: TxCh 2 ---> MIDI Out ---> Cubase SEQ MIDI track 2 "input-transformed to filter all channels unequal to 2": Transmit on channel 1 ---> MIDI Thru (on "live" playing) / MIDI Out (on Cubase sequencer "play") ---> XF Part receiving on channel 1 ---> Tone generation

As I said above, this does actually work. Provided I use Cubase's "record-enable" function on just one Cubase MIDI track at a time. Which makes sense, that's okay. But you can understand why I perhaps opted to search for a more complex internal fix, making use of track INT and EXT switches, local control and the like. It's because by using this method to achieve my goal, I would need 2 XF SEQ tracks, and 2 Cubase SEQ MIDI tracks for just 1 XF Part. Of course, you're probably thinking: Why would someone want to manually program MIDI data AND record live for the same instrument? Honestly, it's a good question.

The truth is that what I've been trying to do isn't really necessary. I'm perfectly fine just using the Cubase sequencer alone for recording, while using the XF as a MIDI controller, tone generator, and voice editor. To put it simply, I'm nit-picking. It would be cool to be able to use both simultaneously but it's not really necessary. So what does this mean then? A feature request perhaps? I'd like to see it. It may not be physically possible under-the-hood, but I might as well mention it just in case it is.

Of course, there's always the possibility I'm still missing something. If so, I'd be glad to find out.

 
Posted : 07/11/2015 10:33 am
Bad Mister
Posts: 12303
 

We think you are still missing something.

First of all, thanks for explaining track INT and EXT switches. Much easier to understand in comparison to the reference manual. As for the solution you gave, it does work. But in order for it to work, you have to use two separate channels for something I was hoping could be accomplished on just one. So yes, it does stop MIDI data on the XF's sequencer from being recorded into Cubase. But only if that data is transmitted on a separate channel from the channel "real-time" live MIDI data is transmitted on. In other words, I need to use another track on the XF to transmit via another channel to Cubase.

The INPUT TRANSFORMER is supposed to be set to filter as many channels as you need. I used channel 1 in my example, you could set it to any channel you desire. Please introduce yourself to it by reading about it in the Cubase documentation. If you need yet another MIDI channel to use (? We aren't exactly sure why) simply set another filter. Not only does not this require any feature request, it will not even warrant a change in the Quick Setups. It is not that common of a request (as you seem to fully recognize).

We recommend learning how you can use Cubase's ability to IMPORT > Motif XF Song directly into your Cubase Project. Using two sequencers in this instance does not give you any significant additional advantage. The nature of MIDI channels is once you transmit on a channel, all receiving devices set to that channel receive it...

 
Posted : 07/11/2015 12:35 pm
Liam
 Liam
Posts: 0
Active Member
Topic starter
 

I understand that this might be pretty intricate of a task to perform, and thus I might not be explaining myself too clearly. However, I can definitely assure you that I understand how the input transformer works. I was actually using it before you mentioned it, but went through the process as per usual to see if I could clarify even further. You seem to be pretty confident I can achieve what I want, so I have no problem continuing. Here's an alternate explanation.

If I use the input transformer to "filter out" every channel except channel 1, then the associated MIDI channel in Cubase can only record MIDI travelling through that channel. When I select track 1 on the Motif, then proceed to physically play the keys, I expect the generated MIDI messages to be transmitted on the corresponding "TxCh" (transmit channel) for that track. I also expect inserted (using [EDIT] --> "insert" in the song mode sequencer) MIDI messages to transmit on the same "TxCh" for that track. Once transmitted, the MIDI goes through a bunch of logic gates within the keyboard before Cubase even comes in. Those logic gates are what I'm trying to manipulate in my favour. Filters just filter MIDI. Filters can't direct MIDI. Local control, track INT, and track EXT can direct the flow of MIDI.

As you mentioned before, and as the manual vaguely touches on, the track INT switch only affects sequenced MIDI. Given this information, clearly, somewhere in the XF's architecture, a distinction is made between "physically-played-keys-MIDI" and "already-sitting-there-in-the-XF-sequencer-MIDI". It's possible to set up MIDI routing so that I can "play" MIDI and have it route out to Cubase, but simultaneously "sequence" MIDI in the XF sequencer and have it never leave the board. Unfortunately, the sequenced MIDI doesn't end up sounding the tone generator. That's what I'm trying to get to occur.

It may well be that the physical architecture of the XF doesn't support this natively. Or... as I've been secretly hoping, the architecture could support it, but doesn't. If the track EXT switch ONLY affected sequenced MIDI and not "live" MIDI, the problem would be solved. As I'd be able to have local control off, track INT on, and track EXT off.

Those are just my random desires. As I mentioned above, it's not the end of the world if I can't solve it.

 
Posted : 07/11/2015 3:28 pm
Share:

© 2024 Yamaha Corporation of America and Yamaha Corporation. All rights reserved.    Terms of Use | Privacy Policy | Contact Us