While code and behavior are widely shared among the applications in Logic Studio, each still specializes in certain tasks and therefore naturally provides a slightly different context in which your audio unit will live. This may make it worthwhile to thoroughly test your plug-ins across the various applications to ensure proper operation. Before turning to the Logic Studio applications though, we recommend to test your audio unit with AU Lab. Designed as the reference host for audio unit development, its Leopard version supports the majority of audio unit features described in this document.
To ensure proper operation of each audio unit on a particular user system, the Logic Studio applications rely on the
Each audio unit that is installed or updated will be validated and failures will be reported to the user.
Since Mac OS X 10.4,
Logic, Soundtrack Pro 2, MainStage, and WaveBurner cache certain information about the audio unit plug-ins installed in the system to speed up the launch process. This includes:
If you are modifying code without increasing the version number of your audio unit, you'll need to rescan the audio unit manually in the Audio Unit Manager to make the applications recognize the changes. Alternatively, you can set an audio unit's version number to zero to force an automatic rescan at every application launch. You can use this technique while developing an audio unit, but must set an appropriate version number in the deployment build.
Audio Unit Views
All four audio unit host applications in Logic Studio use Cocoa to implement their interface. This means that custom Cocoa AU views will run natively in the apps, whereas custom Carbon views run inside an adaptor similar to the techniques described here: Technical Note TN2213, 'Audio Units: Embedding a Carbon View in a Cocoa Window'
Logic Studio provides dedicated support for surround sound. If the audio processing implemented by your audio unit lends itself towards a surround-specific implementation, you should be looking into providing it in the future to enhance overall user experience.
If your audio processing doesn't use spatialization information or if it handles all channels independently, we recommend that you:
External Control Surfaces
Logic and MainStage feature support for external control surfaces such as the Mackie Universal Pro and Euphonix MC Control/Mix and so on.
Note: While Soundtrack Pro 2 also supports control surfaces for mixing, you cannot currently edit effect parameters with a control surface.
MainStage allows for designing user-specific views for plug-ins with a limited number of parameters for easy access on stage. Both features depend on the parameters being exposed to the host via the
When describing your exported parameters via
Another important issue here is to make sure that if a parameter sets
Many audio units still struggle to send proper notification whenever a parameter is changed due to user interaction in its custom UI. Please refer to Technical Note TN2104, 'Handling Audio Unit Events' to learn when and how the change notifications shall be posted according to the AU specifications.
Failure to send proper notifications will cause the automation system to not work properly (particularly when using touch mode to edit existing automation), and it can also break the settings compare button in Logic which allows to compare a modified setting against its original state.
Logic Studio's Audio Unit Property Reference
For your reference, here's a list of all properties used by the Logic Studio applications. Please check that you are supporting these properties as appropriate for your product.
Document Revision History