Jump to content

LogicPro AU3 limitations


Dewdman42

Recommended Posts

Summary

 

This will be an explanation of currently known AU3 support and limitations in LogicPro 10.6. Hopefully some of these issues will be fixed in future releases of LogicPro. I will also detail a little bit, the current track and channel limits of LogicPro 10.6

 

LogicPro's support for AU3 plugins is currently only half-done enough to call "beta" in my view. It has been included in LogicPro in some form for several years, but still some issues remain. That being said, the only currently known AU3 plugin that I'm aware of is VSL's VePro7.AU3 plugin, which happens to be very useful, but sadly is still constrained by somewhat half-baked implementation in LogicPro 10.6

 

  1. 1000 Instrument Channels. LogicPro 10.6 supports 1000 instrument channels. This is often confused by many to mean 1000 "tracks", but that is not the case. LogicPro can have up to 1000 instrument channels in the mixer. Each mixer channel can accommodate multi-timbral instruments, and when used with multi-timbral instruments, then multiple tracks can feed each of those 1000 multi-timbral instrument channels. Even without AU3, that sets an upper limit at 16,000 instrument tracks feeding 1000 multi-timbral instrument channels. With AU3, the upper limit goes up to 768,000 hypothetical instrument tracks (more detail below) feeding 1000 AU3 multi-timbral instruments, but there might be a limit to max number of actual tracks well before that, which I have not ever been able to find so far.
     
    So, to summarize this point, there is an unknown number of max instrument tracks, that is well in the thousands. But a maximum of 1000 instrument channels can be used in a project, where each one could be a multi-timbral instrument with multiple tracks feeding into it.
     
     
  2. AU2 midi channel limits. AU2 instruments support only one single midi port, with up to 16 midi channels as multi-timbral instruments. AU3 instruments can support multiple midi ports, with an unknown max port # supported.
     
     
  3. AU3 midi ports. When AU3 plugins are used in a LogicPro instrument channel, an additional midi port field will appear in the track inspector. The drop down menu will contain exactly the number of midi ports that has been indicated by the AU3 itself. VePro7 supports up to 48 midi ports, so this plugin will expose all 48 midi ports as being available for each track:
     
     
  4. AU3 multi-port Patches can't be saved. if you attempt to save a LogicPro Sound Library patch, based on tracks with AU3, the port assignment is NOT saved with the patch, nor with channel presets.
     
     
  5. Third Party AU2mfx strip port. If you attempt to use any third party AU2mfx midi fx plugins on the channel strip where AU3 is hosted, then the port attribute of each midi event will be stripped out by the AU2mfx plugin. In other words, for example, if you have a track set to port2, channel4 and chained to an AU3 instrument on the same channel strip, that will normally direct midi events to port2, channel4 in the AU3 instrument, but if you add a third party AUmfx plugin to the midi fx section of the same channel strip, then the AU3 instrument will only see port1, channel4 and the multiple port encoding will be lost.
     
     
  6. Transport sync does not appear to work with VePro7.AU3. its not clear right now if this is problem is in LogicPro or VePro7. This means that if you're using a plugin inside VePro that has its own time based playback based on the transport, it will not start playing in sync when LogicPro starts playing.
     
     
  7. LogicPro multi-timbral limits. I saved this point for last because it is the most complicated and demands a thorough explanation. There is a limit to the number of unique multi-timbral tracks can feed a single multi-timbral instrument. it has often been claimed that the limit is 127 midi channels on 8 ports, but this is not precisely correct. In order to explain it precisely I will have to explain the way LogicPro works a little bit.
     
    Normally when you create a multi-timbral instrument, you create a number of tracks that are assigned to the same instrument. Each track allows you to configure the midi channel (and port with AU3 instruments) that the track will use to feed into the multi-timbral instrument.
     
    77232035_ScreenShot2021-02-11at2_08_30PM.jpg.c88bfa9f4aa9f5619ae3813b4e9b9f82.jpg
     
    however under the covers in the environment there is more information to talk about. Whenever you create a new track with next channel, under the covers in the environment a special kind of channel strip object is created. This is a special kind of channel strip that is kind of like an alias to the same instrument channel being shared by other tracks.
     
    For example, let's say you have one track created and configured to be going to VePro7.AU3 on midi channel 1, port 2. Then you use new track with next channel to create another multi-timbral track. That will result in the environment under the covers creating a secondary channel strip object which is a special kind of alias to the original channel strip. They will both be referencing the same internal Inst1 instrument channel, but one will be using midi channel2.
     
    1204719651_ScreenShot2021-02-11at2_43_32PM.thumb.jpg.47151b6f477450a6aaf22aa4398f9983.jpg1578165948_ScreenShot2021-02-11at2_44_12PM.jpg.bc863ee7b339e8911cd60bdf44d0288b.jpg
     
    Each one of those multi-timbral alias channel strips can be configured to route midi events to any one of 48 midi ports and 16 midi channels. (768 total possible channels). However, the catch is that there can only be 127 of these underlying alias channel strips created in the environment. When you attempt to add a 128th track (and create the underlying 128th alias channel strip), LogicPro will quite literally blow up. You can back your way out of it if you know what you're doing, but basically you don't want to have to get into that, its a PITA.
     
    So note that the problem is specifically NOT about creating the 128th track itself, its about the underlying alias channel strip that gets created. Theoretically if you wanted to you could have more than one track configured to the same midi port/channel...and assigned to the same underlying alias channel strip, thus resulting in more than 127 actual tracks feeding the same AU3 instrument plugin. But if you try to add a new track with next channel again, LogicPro will automatically attempt to create a 128th alias channel strip and that is when it will blow up.
     
    So basically, the limit is that you can have no more than 127 of those special alias channel strips, each one with a unique midi channel/port combination, of which there are 768 total possible combinations with VePro7.AU3.
     
    Now there are still some ways to work around this limitation.
     
    One way is by using Scripter to set the midi channel or port dynamically during playback. In that way the 127 unique combinations can be expanded to many more possible combinations before hitting VePro7.AU3. This can be used, for example, to channelize notes by articulationID, using Scripter...and thus access more than 127 unique port/channel strips inside VePro7.
     
    Another way is by using the environment. You can create 48 of those special alias channel strips, one for each port. Each one will have its midi channel set to ALL. Then in the environment use multi-instrument objects to assign the actual midi channel and cable to each one of those 48 channel strips. Then you can assign actual tracks to the environment multi-instruments. In this way, 768 unique port/channel combinations can be routed from tracks to channels inside VePro7.
     
    1504248552_ScreenShot2021-02-11at3_08_00PM.thumb.jpg.ffa62be145cb1cc1e42eb316d0790b59.jpg

Link to comment
Share on other sites

  • 6 months later...

Hello,

 

I want to add that Logic has unreliable behaviour with track delay on multi-timbral setups. I don’t know when the bug showed up:

An aux track connected as a midi channel belonging to a multi timbral instrument channel should use the delay of the instrument channel it points to. Since it can’t have it’s own delay for some reason.

 

This does not always work. Sometimes during playback the track delay (negative or positive) is simply ignored – until the aux track is record enabled. That will make it use the track delay of the multi timbral instrument. For a while. Then it can stop for a while. Etc.

 

I reported the bug to Apple half a year ago.

Link to comment
Share on other sites

The delay doesn't work on multi-timbral instruments at all..not only AUX channels. Doesn't work with AU2 either. Not really related to this thread. And yes its annoying.

 

I've been told that the delay might work if you use beat based time instead of milliseconds. worth a try, but I don't think it will work at all for AUX tracks, its literally greyed out as I recall.

 

as a work around look into using Expert Sleepers latency fixer plugin. That would work particularly well with AUX track multis.

Link to comment
Share on other sites

It does work the way I mention above. I've used it on a couple of project in my experiment template using a multi timbral VEP instrument. It is not possible to assign a delay to the AUX tracks. But the instrument track that the AUX tracks belong to will forward it's delay to the AUX tracks. So all the AUX will have the same delay. Individually won't work as you say, there's no option for it.

 

Or rather, it does work 70%. In practice it sometimes stop forwarding this, until record enabling the AUX track. And the behaviour is erratic.

 

The workaround is to use beat based delay on the regions rather than the tracks. But that's a very blunt workaround that requires a lot of manual work, and merge:ing regions containing delay will move the midi data when merging with other regions, even if they have the same delay. Which is even more annoying.

 

The reason for mentioning it here – even if it's not directly related to AU3 – is just for people who stumble on this post to take it into consideration before putting their time into creating a AU3 based template. If they need the track delay. I think you mentioned it in another thread, so I figured I mention it here.

Link to comment
Share on other sites

What you are seeing is related to Multi instruments, not AUX. The multis all get the forwarded delay value...one delay value for the entire instrument. it doesn't matter whether you're using AUX tracks or not. But as I said, some people reported if you use Beats as the value rather then Milliseconds they say it works. I haven't tried it.

 

As I said before, your issue has nothing to do with AU3. the same problem exists for AU2..its not related to this thread.

 

If you want a work around, try expert sleepers as I have already suggested, which is the best work around at the moment.

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...