Jump to content

Can't record learned CCs in real-time?


aaronbagby

Recommended Posts

Hey guys, I need to figure out how I can record CCs into Logic for assigned parameters in Omnisphere and Waves Grand Rhapsody. I'm setting up a live session where knobs will constantly be used on my controller to bring in elements through the song. We'll be doing numerous full playthroughs, each with plenty of MIDI data going in. I've spent days making sure the sounds are where I want them to be, only to realize that when I play back what I just recorded, none of the cc changes are reflected. I saw a thread in which someone suggested having the MIDI tracks on Latch mode, this didn't solve it. I need to figure this out ASAP! I could print to audio in real-time and this would obviously include the controls, but I want to be able to correct things if anything is glaring. Thanks in advance, I'm sure someone here knows what to do.
Link to comment
Share on other sites

When you controller-assign an incoming MIDI CC message to a plugin parameter, that CC message never reaches the sequencer, and cannot be recorded.

 

Instead, you would be using *automation* to record the movements of the *parameter you are remotely controlling* via the CCs.

Link to comment
Share on other sites

When you controller-assign an incoming MIDI CC message to a plugin parameter, that CC message never reaches the sequencer, and cannot be recorded.

 

Instead, you would be using *automation* to record the movements of the *parameter you are remotely controlling* via the CCs.

 

Thanks for the reply. I get this in principle, but I'm struggling to make it work. I tried setting the MIDI to Latch mode on these two instruments, but doing so doesn't seem possible on the region level ( it just automatically switches back to Track). I need to preserve the automation of each performance, or else it defeats the purpose of doing it live. Any pointers here? Thanks again!

Link to comment
Share on other sites

I take it you aren't familiar with automation in general?

 

Put the track on Latch mode, hit play, then tweak your MIDI knob that you assigned to a plugin parameter. You should see automation being recorded. When done, set the track back to read mode.

 

There is region-based automation too, but there's no point regurgitating the manual, that's easy enough to look up and learn how automation works.

 

Some instruments though, like Omnisphere, have *way* too many parameters to expose to the host, and so there is an intermediate step where you have to enable this in the plugin and I think also choose the automation parameters (can't remember offhand). See the Omnisphere manual for this...

 

I don't know about the Waves one, but in general, Waves stuff works fine for automation, and there shouldn't be any problems.

Link to comment
Share on other sites

When you controller-assign an incoming MIDI CC message to a plugin parameter, that CC message never reaches the sequencer, and cannot be recorded.

 

Instead, you would be using *automation* to record the movements of the *parameter you are remotely controlling* via the CCs.

 

Thanks for the reply. I get this in principle, but I'm struggling to make it work. I tried setting the MIDI to Latch mode on these two instruments, but doing so doesn't seem possible on the region level ( it just automatically switches back to Track). I need to preserve the automation of each performance, or else it defeats the purpose of doing it live. Any pointers here? Thanks again!

use the "learn controller assignment" in logic and remove the midi cc from that same parameter in your synth. don't double map it like that. I've had this same issue recently and it was going back and forth between two different mappings if that makes sense.

Link to comment
Share on other sites

I take it you aren't familiar with automation in general?

 

Put the track on Latch mode, hit play, then tweak your MIDI knob that you assigned to a plugin parameter. You should see automation being recorded. When done, set the track back to read mode.

 

There is region-based automation too, but there's no point regurgitating the manual, that's easy enough to look up and learn how automation works.

 

Some instruments though, like Omnisphere, have *way* too many parameters to expose to the host, and so there is an intermediate step where you have to enable this in the plugin and I think also choose the automation parameters (can't remember offhand). See the Omnisphere manual for this...

 

I don't know about the Waves one, but in general, Waves stuff works fine for automation, and there shouldn't be any problems.

 

I understand automation modes in general, but I have never attempted what I'm doing now (many live takes). By setting the tracks to "latch", I am able to record the two tracks with all midi data represented. But I do not wish the track to contain the CC data. I want it to be embedded in each region as I played it in the recording without losing each performance's respective automations. Is this not possible? As I said, if "region" automation is selected, the automation mode will only show "read".

Link to comment
Share on other sites

But I do not wish the track to contain the CC data. I want it to be embedded in each region as I played it in the recording without losing each performance's respective automations. Is this not possible? As I said, if "region" automation is selected, the automation mode will only show "read".

 

To be clear - you are not recording CC data. There is no CC data recorded. The incoming CC data is changing a plugin parameter, in exactly the same way as if you were changing that parameter with the mouse, and it's that parameter automation that is recorded as automation (not MIDI) data.

 

If you can't select an automation mode for region-based automation, you probably haven't selected the region you are automating into. There must be a region created and selected for region-based automation to be associated with, and you can't change an automation mode for a region if you haven't selected a region to change the mode of, if you see what I mean...

 

Region-based vs Track-based automation

https://help.apple.com/logicpro/mac/10.4.7/#/lgcp967649d0

Link to comment
Share on other sites

 

Thanks for the reply. I get this in principle, but I'm struggling to make it work. I tried setting the MIDI to Latch mode on these two instruments, but doing so doesn't seem possible on the region level ( it just automatically switches back to Track). I need to preserve the automation of each performance, or else it defeats the purpose of doing it live. Any pointers here? Thanks again!

use the "learn controller assignment" in logic and remove the midi cc from that same parameter in your synth. don't double map it like that. I've had this same issue recently and it was going back and forth between two different mappings if that makes sense.

 

I've started this process, and I think it will be the winner, but I am having trouble. It doesn't seem to want to learn more than one controller assignment. I have enabled host automation on each parameter I want to control. As I go through and "learn" them in logic's dialog, the previous learned assignment stops working.

Link to comment
Share on other sites

You can learn multiple MIDI controls to multiple parameters in Logic without problems. My own controllers have hundreds of assignments. Probably you're not doing the learn procedure correctly, but it's difficult to know what you're doing unless you document exactly what you're doing...
Link to comment
Share on other sites

use the "learn controller assignment" in logic and remove the midi cc from that same parameter in your synth. don't double map it like that. I've had this same issue recently and it was going back and forth between two different mappings if that makes sense.

 

I've started this process, and I think it will be the winner, but I am having trouble. It doesn't seem to want to learn more than one controller assignment. I have enabled host automation on each parameter I want to control. As I go through and "learn" them in logic's dialog, the previous learned assignment stops working.

did you try deleting all automation and starting over? sometimes there is an automation point in the beginning of the track which will stir things up as you're trying to create new automation.

Link to comment
Share on other sites

You can learn multiple MIDI controls to multiple parameters in Logic without problems. My own controllers have hundreds of assignments. Probably you're not doing the learn procedure correctly, but it's difficult to know what you're doing unless you document exactly what you're doing...

 

Here is the bet summation of my attempt. I have manually unlearned all of the CC changes I added within Omnisphere. Then for each one, enabled host automation. Then I hop over to the Logic "learn" dialog" and select the parameter I want to learn and toggle the knob. Boom, it works. Awesome.

 

But when I repeat the process, each previous learned task simply stops working, despite remaining visible and "learned" in the dialog. If there's anything else I can add, please advise. I'm trying to be as detailed as possible.

Link to comment
Share on other sites

Then I hop over to the Logic "learn" dialog" and select the parameter I want to learn and toggle the knob. Boom, it works. Awesome.

 

Which knob? What MIDI data is it sending? What parameters are you trying to control? How many at once?

 

But when I repeat the process, each previous learned task simply stops working, despite remaining visible and "learned" in the dialog. If there's anything else I can add, please advise. I'm trying to be as detailed as possible.

 

Are you trying to make the same one knob control multiple individual parameters? That won't work, as either it will control only one parameter (deleting any previous parameters that knob was learned to), or it will control *all* of those multiple parameters at once (which is unlikely to be what you want).

 

You can keep manually learning a new assignment every time you want that knob to control a new parameter (this won't change any written automation, as the automation is for the plugin parameter, which has nothing to do with any control assignments) - but it's a bit of a crappy way to work imo (although it might be ok for your needs).

 

If you just have one knob, and want to use it to control different parameters for each pass, then you might be better off using Automation Quick-Access mode (again, a quick manual search will tell you how this works and how to set it up).

Link to comment
Share on other sites

Then I hop over to the Logic "learn" dialog" and select the parameter I want to learn and toggle the knob. Boom, it works. Awesome.

 

Which knob? What MIDI data is it sending? What parameters are you trying to control? How many at once?

 

But when I repeat the process, each previous learned task simply stops working, despite remaining visible and "learned" in the dialog. If there's anything else I can add, please advise. I'm trying to be as detailed as possible.

 

Are you trying to make the same one knob control multiple individual parameters? That won't work, as either it will control only one parameter (deleting any previous parameters that knob was learned to), or it will control *all* of those multiple parameters at once (which is unlikely to be what you want).

 

You can keep manually learning a new assignment every time you want that knob to control a new parameter (this won't change any written automation, as the automation is for the plugin parameter, which has nothing to do with any control assignments) - but it's a bit of a crappy way to work imo (although it might be ok for your needs).

 

If you just have one knob, and want to use it to control different parameters for each pass, then you might be better off using Automation Quick-Access mode (again, a quick manual search will tell you how this works and how to set it up).

 

No, I'm using different knobs for different elements. I think I've figured it out (at least this part). I have found that it only works if I enable host automation and then learn the assignment for each individual control, and then move to the next, fully repeating. If I enable host automation across the parameters all at once, then go back to learn them all at once, it must do something funny with the Host ID or something, because it causes them all to stop working. A little painful, but good to know. I just got them all to work, but could only make them work on "selected track". In the process of trying to get them to work on the Omnisphere track regardless of which track is selected, they all just vanished. This is really spinning me for a loop.

 

Edit: To clarify, Omnisphere is shown as INST 4 in MIDI environment. Changing "channel strip" to "Software Instrument" and typing 4 after it causes the name of the "learned" parameter" to change, and it stops working.

Link to comment
Share on other sites

But I do not wish the track to contain the CC data. I want it to be embedded in each region as I played it in the recording without losing each performance's respective automations. Is this not possible? As I said, if "region" automation is selected, the automation mode will only show "read".

 

To be clear - you are not recording CC data. There is no CC data recorded. The incoming CC data is changing a plugin parameter, in exactly the same way as if you were changing that parameter with the mouse, and it's that parameter automation that is recorded as automation (not MIDI) data.

 

If you can't select an automation mode for region-based automation, you probably haven't selected the region you are automating into. There must be a region created and selected for region-based automation to be associated with, and you can't change an automation mode for a region if you haven't selected a region to change the mode of, if you see what I mean...

 

Region-based vs Track-based automation

https://help.apple.com/logicpro/mac/10.4.7/#/lgcp967649d0

 

 

Again, makes sense in principle. However, I still am unclear on this...in simplest terms, is it possible to record multiple passes of MIDI, and have them playback with all automation happening just as it did in respective performance takes, such that I can choose the best one, and correct any minor mistakes before printing to associated audio tracks? I have tried every mode and combination, and gotten nowhere. Thanks again, I have scoured every forum I could find. If this is not possible, I'm simply going to have to record to audio in real-time. I don't want to do this, because I don't want to comp multiple takes of audio performance.

Link to comment
Share on other sites

 

To be clear - you are not recording CC data. There is no CC data recorded. The incoming CC data is changing a plugin parameter, in exactly the same way as if you were changing that parameter with the mouse, and it's that parameter automation that is recorded as automation (not MIDI) data.

 

If you can't select an automation mode for region-based automation, you probably haven't selected the region you are automating into. There must be a region created and selected for region-based automation to be associated with, and you can't change an automation mode for a region if you haven't selected a region to change the mode of, if you see what I mean...

 

Region-based vs Track-based automation

https://help.apple.com/logicpro/mac/10.4.7/#/lgcp967649d0

you could duplicate the track and do as many passes as youd like on that one and take the best performance which might be annoying, but i've heard mostly of people getting the best hardware take they can then just editing ITB

 

 

Again, makes sense in principle. However, I still am unclear on this...in simplest terms, is it possible to record multiple passes of MIDI, and have them playback with all automation happening just as it did in respective performance takes, such that I can choose the best one, and correct any minor mistakes before printing to associated audio tracks? I have tried every mode and combination, and gotten nowhere. Thanks again, I have scoured every forum I could find. If this is not possible, I'm simply going to have to record to audio in real-time. I don't want to do this, because I don't want to comp multiple takes of audio performance.

Link to comment
Share on other sites

you could duplicate the track and do as many passes as youd like on that one and take the best performance which might be annoying, but i've heard mostly of people getting the best hardware take they can then just editing ITB

 

 

Again, makes sense in principle. However, I still am unclear on this...in simplest terms, is it possible to record multiple passes of MIDI, and have them playback with all automation happening just as it did in respective performance takes, such that I can choose the best one, and correct any minor mistakes before printing to associated audio tracks? I have tried every mode and combination, and gotten nowhere. Thanks again, I have scoured every forum I could find. If this is not possible, I'm simply going to have to record to audio in real-time. I don't want to do this, because I don't want to comp multiple takes of audio performance.

 

 

Not sure I get exactly what you mean. In this scenario, the goal is for editing to be VERY minimal. The recording is going to be a "live" video. I just need the takes in tact as they were performed.

Link to comment
Share on other sites

In any case, to all who are interested, something very strange is happening. I have programmed these controller assignments probably ten times each, and without fail, they stop working after some time. I really don't know how I'm going to achieve my end-goal here, might just go back to Omnisphere's internal CC Learn and print audio as I go. Thanks again to everyone who has contributed.
Link to comment
Share on other sites

Again, makes sense in principle. However, I still am unclear on this...in simplest terms, is it possible to record multiple passes of MIDI, and have them playback with all automation happening just as it did in respective performance takes, such that I can choose the best one, and correct any minor mistakes before printing to associated audio tracks?

No. Automation and Recording are two different things, and multiple takes are available only for Recording, not for Automation.

 

If you record a MIDI CC then yes, you can record multiple takes, the same way you can record multiple takes of MIDI notes. If you assign (a.k.a. learn) a MIDI CC as a controller assignment, then you can use it for Automation, meaning there's only one take possible.

 

To record the MIDI CC rather than assigning it as a controller assignment, you need to set up that MIDI CC in the plug-in itself to control whatever you want in the plug-in, but not learn it as an assignment using Logic's control surface features.

 

Hope that makes sense?

Link to comment
Share on other sites

Again, makes sense in principle. However, I still am unclear on this...in simplest terms, is it possible to record multiple passes of MIDI, and have them playback with all automation happening just as it did in respective performance takes, such that I can choose the best one, and correct any minor mistakes before printing to associated audio tracks?

No. Automation and Recording are two different things, and multiple takes are available only for Recording, not for Automation.

 

If you record a MIDI CC then yes, you can record multiple takes, the same way you can record multiple takes of MIDI notes. If you assign (a.k.a. learn) a MIDI CC as a controller assignment, then you can use it for Automation, meaning there's only one take possible.

 

To record the MIDI CC rather than assigning it as a controller assignment, you need to set up that MIDI CC in the plug-in itself to control whatever you want in the plug-in, but not learn it as an assignment using Logic's control surface features.

 

Hope that makes sense?

 

This is the sort of definitive answer I was looking for. When you say “record the CC” you just mean having it committed straight to the audio I assume?

Link to comment
Share on other sites

No. I mean record the MIDI CC data to your MIDI track. The data can then be edited, deleted, re-recorded, etc... just like MIDI notes can.

 

 

Sorry but I don’t quite follow. You say to accomplish this by learning the CC messages in the plug-in (omnisphere) instead of Logic’s learned assignments. Unless I’m missing something, won’t that just be controlling the instrument? How does that set me up to record the CCs?

Link to comment
Share on other sites

David is illustrating the two alternative approaches we've been discussing in this thread:

 

1: Automation

- Uses Logic's controller assignments so incoming MIDI CC's are mapped by Logic directly to plugin parameters, and plugin parameters write as automation data (*not MIDI data*) in their own lanes. MIDI CC's never reach Logic's sequencer and are not recorded - they *only* remotely control the mapped plugin parameters, basically as if you were using the mouse to change the plugin parameters.

 

2: MIDI Learn

- Uses the plugin's MIDI learn feature. MIDI CC's enter Logic and *do* reach the sequencer, and are recorded just as regular MIDI CC data. You can use all of Logic's MIDI editing features, take recordings etc as normal. This MIDI CC data is passed onto the plugin on that track, and the plugin itself responds to the MIDI CC's you've mapped within it to change it's own parameters internally.

 

Two different approaches, to remotely control and record plugin parameters via MIDI controls, and each has different strengths and weaknesses.

Link to comment
Share on other sites

David is illustrating the two alternative approaches we've been discussing in this thread:

 

1: Automation

- Uses Logic's controller assignments so incoming MIDI CC's are mapped by Logic directly to plugin parameters, and plugin parameters write as automation data (*not MIDI data*) in their own lanes. MIDI CC's never reach Logic's sequencer and are not recorded - they *only* remotely control the mapped plugin parameters, basically as if you were using the mouse to change the plugin parameters.

 

2: MIDI Learn

- Uses the plugin's MIDI learn feature. MIDI CC's enter Logic and *do* reach the sequencer, and are recorded just as regular MIDI CC data. You can use all of Logic's MIDI editing features, take recordings etc as normal. This MIDI CC data is passed onto the plugin on that track, and the plugin itself responds to the MIDI CC's you've mapped within it to change it's own parameters internally.

 

Two different approaches, to remotely control and record plugin parameters via MIDI controls, and each has different strengths and weaknesses.

 

 

I get exactly what the premise is here. The reason this does not compute comes back full-circle, to my original question, which hinged on MIDI learned functions internal to omnisphere NOT being recorded. You say here that these learned functions reach the sequencer, but they are certainly not on my end.

Link to comment
Share on other sites

I just rigged the above MIDI CC scenario up as a quick test (learned CC #1 mod wheel to filter resonance in Omnisphere's MIDI learn), and it works just fine as expected here.

 

I could play in realtime, record the mod wheel data, and play it back, and the resonance parameter was being controlled as expected.

Link to comment
Share on other sites

Thanks to all who replied. It didn’t dawn on me until embarrassingly late that the CCs were being recorded into the MIDI, and the reason I wasnt hearing them accurately was because during playback after recording, I had to “re-zero” those CCs. Playing back without doing so leaves the CCs at their last value, thus throwing everything out of wack.
Link to comment
Share on other sites

Thanks to all who replied. It didn’t dawn on me until embarrassingly late that the CCs were being recorded into the MIDI, and the reason I wasnt hearing them accurately was because during playback after recording, I had to “re-zero” those CCs. Playing back without doing so leaves the CCs at their last value, thus throwing everything out of wack.

Yes that's correct, the instrument remembers the last CC value that was sent to it and plays back accordingly, which can sometimes be an issue.

Link to comment
Share on other sites

David is illustrating the two alternative approaches we've been discussing in this thread:

 

1: Automation

- Uses Logic's controller assignments so incoming MIDI CC's are mapped by Logic directly to plugin parameters, and plugin parameters write as automation data (*not MIDI data*) in their own lanes. MIDI CC's never reach Logic's sequencer and are not recorded - they *only* remotely control the mapped plugin parameters, basically as if you were using the mouse to change the plugin parameters.

 

2: MIDI Learn

- Uses the plugin's MIDI learn feature. MIDI CC's enter Logic and *do* reach the sequencer, and are recorded just as regular MIDI CC data. You can use all of Logic's MIDI editing features, take recordings etc as normal. This MIDI CC data is passed onto the plugin on that track, and the plugin itself responds to the MIDI CC's you've mapped within it to change it's own parameters internally.

 

Two different approaches, to remotely control and record plugin parameters via MIDI controls, and each has different strengths and weaknesses.

What is the advantage to midi learn? I’ve always used logic controller assignment to record automation. Is the benefit having one function as an absolute value and the other as a relative value ??

Link to comment
Share on other sites

If I were you I would give both approaches a try, which would answer your last question for you.

 

Personally I don't think in terms of one having advantages over the other, they're just two different methods. Automation makes it easier to re-record automation movements at will without changing the recorded notes, which is more of a challenge with MIDI CC. MIDI CC is MIDI data which automatically benefits from any tool that can manipulate MIDI data like MIDI Transform for example.

 

Automation moves the knobs visually which MIDI CC doesn't.

 

Automation offers Latch, Touch and Write modes while MIDI CC can benefit from the different recording settings and preferences.

 

MIDI CC is a bit more difficult to separate from MIDI Notes than automation is.

 

Etc etc...

Link to comment
Share on other sites

If I were you I would give both approaches a try, which would answer your last question for you.

 

Personally I don't think in terms of one having advantages over the other, they're just two different methods. Automation makes it easier to re-record automation movements at will without changing the recorded notes, which is more of a challenge with MIDI CC. MIDI CC is MIDI data which automatically benefits from any tool that can manipulate MIDI data like MIDI Transform for example.

 

Automation moves the knobs visually which MIDI CC doesn't.

 

Automation offers Latch, Touch and Write modes while MIDI CC can benefit from the different recording settings and preferences.

 

MIDI CC is a bit more difficult to separate from MIDI Notes than automation is.

 

Etc etc...

I see. I’ve used midi cc but never saw the benefit due to how I needed to have the option of further editing automation lines ITB. Thanks for explaining.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...