# AUv3Synth demo - OS X host?

**URL:** <https://forum.juce.com/t/auv3synth-demo-os-x-host/17231>\
**Category:** General JUCE discussion\
**Created:** [April 12, 2016, 5:02pm UTC](https://forum.juce.com/t/auv3synth-demo-os-x-host/17231 "2016-04-12T17:02:03Z")\
**Posts on this page:** 11\
**Page:** 1

<div class="post-metadata">

**Author:** ![willrice](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/willrice/32/55_2.png) [@willrice](https://forum.juce.com/u/willrice)\
**Post date:** [April 12, 2016, 5:02pm UTC](https://forum.juce.com/t/auv3synth-demo-os-x-host/17231/1 "2016-04-12T17:02:03Z")

</div>

Hi guys,

What AUv3 compatible host have you been using internally to test the AUv3Synth demo on OS X? Logic Pro X 10.2.2 doesn’t seem to support AUv3 yet…?

Also, what are the correct installation paths for the built (OS X) demo files?

**AUv3Synth.app**  
**AUv3Synth.appex**  
**AUv3Synth.framework**  
/Library/Audio/Plug-Ins/VST/ **AUv3Synth.vst** _(alias)_  
/Library/Audio/Plug-Ins/VST3/ **AUv3Synth.vst3** _(alias)_

---

<div class="post-metadata">

**Author:** ![fr810](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/fr810/32/841_2.png) [@fr810](https://forum.juce.com/u/fr810)\
**Post date:** [April 12, 2016, 5:18pm UTC](https://forum.juce.com/t/auv3synth-demo-os-x-host/17231/2 "2016-04-12T17:18:11Z")

</div>

1. Well unfortunately there aren’t any real good third-party AUv3 hosts on OS X atm. You can use JUCE’s “audio plugin host” example project in the examples folder to load AUv3s and [auval](https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man1/auval.1.html) also supports AUv3s. I’ve also found this [open-source AUv3 host] ([https://github.com/vgorloff/AUHost](https://github.com/vgorloff/AUHost)) which didn’t immedietly compile for me though (I needed to comment out a line which was causing crashes - also make sure to use the develop branch).

2. The AUv3 does not need to be in any specific location. The OS will find the appex automatically inside the wrapper app (AUv3Synth.app) once the wrapper app has been registered by OS X’s launch services. You can force the registration of the wrapper app by simply launching the wrapper app from the Finder or running it from XCode.

Let me know if this solve’s your problem.

---

<div class="post-metadata">

**Author:** ![AaronLeese](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/aaronleese/32/624_2.png) [@AaronLeese](https://forum.juce.com/u/AaronLeese)\
**Post date:** [April 12, 2016, 5:52pm UTC](https://forum.juce.com/t/auv3synth-demo-os-x-host/17231/3 "2016-04-12T17:52:50Z")

</div>

I was able to get it to load in the juce demo host.

Ableton doesn’t seem to load either the au3 (no surprise) or the VST version.  
It should, of course, be able to see the VST version, so I’m not sure what’s going on there.

---

<div class="post-metadata">

**Author:** ![willrice](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/willrice/32/55_2.png) [@willrice](https://forum.juce.com/u/willrice)\
**Post date:** [April 12, 2016, 6:10pm UTC](https://forum.juce.com/t/auv3synth-demo-os-x-host/17231/4 "2016-04-12T18:10:21Z")

</div>

Thanks Fabian, I had previously tried to get it running in the JUCE audio plugin host, but didn’t realise that it was launching the .app which registers the AU Extension with the OS. I’ve got it running now.

Am I correct in thinking that when using the audio plugin host, the AUv3Synth plugin runs in the host thread and not as a sandboxed process? Is there a specific reason for this?

---

<div class="post-metadata">

**Author:** ![fr810](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/fr810/32/841_2.png) [@fr810](https://forum.juce.com/u/fr810)\
**Post date:** [April 12, 2016, 6:23pm UTC](https://forum.juce.com/t/auv3synth-demo-os-x-host/17231/5 "2016-04-12T18:23:40Z")

</div>

Hi will, AUv3s always run in a sandboxed process, i.e. it’s not running in the host process. Check ‘ps -A’ in the terminal and you will see the AUv3Synth process running when you load the AUv3Synth in the host.

---

<div class="post-metadata">

**Author:** ![willrice](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/willrice/32/55_2.png) [@willrice](https://forum.juce.com/u/willrice)\
**Post date:** [April 12, 2016, 6:46pm UTC](https://forum.juce.com/t/auv3synth-demo-os-x-host/17231/6 "2016-04-12T18:46:53Z")

</div>

Thanks @fabian, I had fooled myself - in my original trouble getting audio plugin host to see AUv3Synth, I tried building AUv3Synth as a regular old AU component. It was _that_ version which I was successfully running in audio plugin host, hence the sandboxing confusion!

The trouble is… now I’m back to being unable to get AUv3Synth to show up in audio plugin host at all.

Re: “AUv3s will _always_ run in a sandboxed process”. Apparently on OS X this is optional - [https://developer.apple.com/videos/play/wwdc2015/508/?time=1050](https://developer.apple.com/videos/play/wwdc2015/508/?time=1050) **@ 17:35** - there’s a host flag **kAudioComponentInstantiation\_LoadInProcess** and an extension plist entry **AudioComponentBundle** if you _(really)_ want to run the plugin within the host thread (for performance reasons).

---

<div class="post-metadata">

**Author:** ![fr810](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/fr810/32/841_2.png) [@fr810](https://forum.juce.com/u/fr810)\
**Post date:** [April 12, 2016, 6:55pm UTC](https://forum.juce.com/t/auv3synth-demo-os-x-host/17231/7 "2016-04-12T18:55:06Z")

</div>

Can you see it in auval? Also, it’s super important that your AUv3 wrapper app has the Sandbox capability ticked. The projucer should do this automatically for you. But you will probably need to have a Mac Developer account and specify your developer team id in the projucer. If the wrapper app is not properly sandboxed then the AUv3 will not register.

I’ve seen the kAudioComponentInstantiation\_LoadInProcess flag - but I could only get it to work if the AUv3 appex bundle was inside the host apps bundle and the AUv3 had a child bundle id of the host app (for example: com.roli.auv3host.auv3filter and com.roli.auv3host - the projucer automatically does this latter for the wrapper app and the appex bundle ids, for example). This limits the loading of AUv3 plug-ins to non third-party plug-ins only - which is not very useful. However, the Apple documentation does not mention any of this so it could be a JUCE bug.

---

<div class="post-metadata">

**Author:** ![willrice](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/willrice/32/55_2.png) [@willrice](https://forum.juce.com/u/willrice)\
**Post date:** [April 12, 2016, 10:00pm UTC](https://forum.juce.com/t/auv3synth-demo-os-x-host/17231/8 "2016-04-12T22:00:10Z")

</div>

> [@fabian](#):
>
> Can you see it in auval?

No, despite my best attempts I can’t get auval to see it.

[quote]  
Also, it’s super important that your AUv3 wrapper app has the Sandbox capability ticked.[/quote]  
Where does one “tick” sandboxing for the .app target?

> [@](#):
>
> The projucer should do this automatically for you. But you will probably need to have a Mac Developer account and specify your developer team id in the projucer. If the wrapper app is not properly sandboxed then the AUv3 will not register.

I don’t have a paid up Apple Developer account (so I don’t think I’m able to generate signing identities). Is this obligatory for building functional AUv3s 😑?

---

<div class="post-metadata">

**Author:** ![willrice](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/willrice/32/55_2.png) [@willrice](https://forum.juce.com/u/willrice)\
**Post date:** [April 12, 2016, 11:11pm UTC](https://forum.juce.com/t/auv3synth-demo-os-x-host/17231/9 "2016-04-12T23:11:23Z")

</div>

Searching “sandbox” in the Console revealed that it’s definitely the issue. Lots of entries like:

> 12/04/2016 23:56:32.380 pkd[291]: ignoring mis-configured plug-in at ~/SDKs/juce/examples/AUv3Synth/Builds/MacOSX/build/Debug/AUv3Synth.app/Contents/PlugIns/AUv3Synth.appex: plug-ins must be sandboxed

So do I have to bite the bullet and give Apple $100 to proceed?

---

<div class="post-metadata">

**Author:** ![fr810](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/fr810/32/841_2.png) [@fr810](https://forum.juce.com/u/fr810)\
**Post date:** [April 13, 2016, 5:37pm UTC](https://forum.juce.com/t/auv3synth-demo-os-x-host/17231/10 "2016-04-13T17:37:45Z")

</div>

I’m not sure if you need a dev account for sandboxing to work. The projucer should automatically enable sandboxing of the appex. Click on the project icon in the project tree in Xcode. Then, on the right, you should see build settings, build phases, etc. Select “PowerSynth (AUv3)” from the target popup menu at the top to see the build settings, build phases for that target. You should now see a “Capabilities” tab. Click on that tab and check if Sand box is enabled. Sometimes there will be a fix issues button there as well.

---

<div class="post-metadata">

**Author:** ![timur](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/timur/32/541_2.png) [@timur](https://forum.juce.com/u/timur)\
**Post date:** [April 14, 2016, 11:32am UTC](https://forum.juce.com/t/auv3synth-demo-os-x-host/17231/11 "2016-04-14T11:32:44Z")

</div>

> [@](#):
>
> I’m not sure if you need a dev account for sandboxing to work.

No you don’t.

> [@](#):
>
> Sometimes there will be a fix issues button there as well.

There shouldn’t be one, the Projucer should generate the project automatically such that the build settings look like this:

 ![](https://us1.discourse-cdn.com/flex026/uploads/juce/original/1X/76327b2762c0e784d43cc3b5ea98ce1c4a8e7881.png)

If that’s not the case, it’s possibly a bug in the Projucer, in this case please let us know.
