And after Stop Cabbage when a .csd file was running
DEBUG: Joining thread before reset... [CabbageProcessor.cpp (306) stopIdleThread Thread ID: 0x1fbb29f00]
DEBUG: Thread joined [CabbageProcessor.cpp (308) stopIdleThread Thread ID: 0x1fbb29f00]
And after Stop Cabbage when a .csd file was running
DEBUG: Joining thread before reset... [CabbageProcessor.cpp (306) stopIdleThread Thread ID: 0x1fbb29f00]
DEBUG: Thread joined [CabbageProcessor.cpp (308) stopIdleThread Thread ID: 0x1fbb29f00]
Thanks for this. You’re using 1.0.70?
Yep. Just got it a few minutes ago.
Ok, thanks for testing. I will try another approach and let you know.
I’ve triggered another build now. I can’t seem to recreate the issues you’re having, so we might be doing this blind for a while until we find the solution!
I just took another look at this, and I’m not sure my last fix will work. When the Cabbage server starts, it sets an audiocallback in motion. This callback, hosted on its own thread, is running for the duration of the session. Each time we kill and restart an instrument, we simply patch it into this callback. When we kill the server, the callback should stop running, the thread should rejoin the main thread, and it should exit gracefully. For some reason, this is not the case on your machine. I’m also able to recreate it here from time to time. I’ll keep looking for a solution
The latest build now has a fix for this issue. I hope I’ve cracked it this time
I’m having an issue exporting my plugin from VSCode. This is my first time trying to do this.
I get the following error:
Command ‘Cabbage: Export as AUv2 Effect’ resulted in an error
A system error occurred (ENOENT: no such file or directory, scandir ‘’)
I did notice that it defaults to trying to save with a .vst3 extension, even though I selected “Export as AUv2 effect”.
It also isn’t clear to me how I add the Library/CabbageAudio path in Logic. Logic is only looking in my old Cabbage components directory (/Users/bryantysinger/Library/Audio/Plug-Ins/Components).
Sorry @Bryan_T, I still have some work to do with the audiounit export. I’m traveling for the next few days, but should get a chance to look at it before the end of the week
If i remember correctly from when I was getting this to work on MacOS, copy the files inside the plugin from Library/CabbageAudio into wherever you specified to export the plugin, then take that file and paste it into your any of your custom VST directories for you DAW. If that sounds confusing, just look at how the Cabbage2 plugins are structured and try and get the same file structure + whatever you are using for the interface.
Sorry guys, I still didn’t get a chance to take a look at this. It’s on the top of my todo list. Actually, what I’ll do for now is reenable the AU builds in the CI, they might be working fine after all. But they are currently not included.
[edit] I’ve reenabled the AudioUnit exports. There is a new build underway. I will try to find time to test it later, but if anyone tries it in the meantime, let me know if it works
Tried the most recent cabbage build. As best as I can tell, the AudioUnit export never writes anything to disk. It goes through the whole “save as” menu system, but doesn’t write any files. It still defaults to the vst3 extension.
I’ll take a look now…
[edit] It looks like the .component files being exported are not valid AudioUnits. It will take me a little more time to resolve this than I had hoped. I’ll let you know when I have something to test.
Just to let you know, I’m still working on this. The AU unique ID is not being picked up by the Cabbage component, which causes it to fail when loading. I’m currently investigating…
This turned out to be much trickier than I had hoped, but I have a script that will now help us export as AudioUnits. It seems to be working in a standalone context. I’ll add it to the extension next and see if it continues to work there. Should have something in the next few days
Thank you!
I keep developing in Cabbage 2, but would love to shift to Cabbage 3 to get a slicker UI.
@Bryan_T, I’ve just released a new beta to test. I’ve tried it here, and the AUs work fine in Reaper. This build will also adhoc sign each plugin you export on MacOS. I don’t have Logic, but I do have Garageband, and guess what, it opens and the generic UI seems to pick up the channels/widgets fine, but the native UI doesn’t appear I’m sure it’s down to some kind of sandboxing issues with the web based UI. I’ll have to find a way to debug this. Apple have made it next to impossible to debug AUs on MacOS. Go figure. Can you give it a whirl, and see if it runs? Pluginval is passing it with the strictest settings. Maybe you can try the Logic plugin validator and see what it says?
I was able to export a .component bundle. I saved it in Library/Audio/Plug-ins/Components
It shows up in the Plug-in Manager in Logic with a name (from PluginID, not from caption). Type is listed as “effect” where all my other CabbageAudio plugins are “Midi-controlled effect.” Version shows as 0.0.1.
However, I can’t actually load it on a track - the plugin does not appear. In the Plug-in Manager it is in the CabbageAudio group, but it is not available in that folder for use on a track (AudioUnits->CabbageAudio).
Let me know how else I can help.
That’s odd, for me, in Garageband and other non-Apple hosts it shows as the name of the plugin, i.e, the name given during export, which is what it should be. Odd that it doesn’t work with Logic this way. I will try with Mainstage, I think it might use the same scanning mechanism as Logic.