Audio Programming Environment 0.5.0: C++ DSP directly in your DAW!

DSP, Plugin and Host development discussion.
Post Reply New Topic
RELATED
PRODUCTS

Post

kartalex wrote: Thu Sep 23, 2021 10:22 pm Can we make MIDI plug-ins with APE? Does it support something like processMIDIEvents?
unfortunately not yet. see discussion starting somewhere at the bottom of page 2
My website: rs-met.com, My presences on: YouTube, GitHub, Facebook

Post

Is there a way to see all console errors? Currently, we are limited to what fits on screen as there is no scroll bar. Is there a file created with the rest of the text?

Post

How much overhead is there in APE? I mean, if one wanted to program e.g. a high-quality reverb, then is there too much bottleneck?

Post

Ahhh! Sorry guys, as usual I don't get notifications for new posts :(
gavinray wrote: Tue Sep 14, 2021 4:32 pm For some reason, the VST2 fails to scan in REAPER, though opens perfectly fine in Cakewalk.
Does anyone have a clue why that might be?
I've no clue, is this still a problem? And you don't have issues loading other vst2s in reaper? Testing locally I can see there's an issue with the 64 bit build, I'll have to look into that.
DrEntropy wrote: Thu Sep 16, 2021 11:18 pm Wow this APE thing is quite incredible indeed! Has Janus Thorborg moved on to other things though? I think this has the potential to become an amazing tool, there is really nothing out there like it. Bluecat audio's thing comes close ( it uses some language called Angelscript).
Thanks a lot! No I'm currently working on the next version of Signalizer, but I'm swamped at work as well so as usual it's progressing slower than I want to.
kartalex wrote: Thu Sep 23, 2021 10:22 pm Can we make MIDI plug-ins with APE? Does it support something like processMIDIEvents?
Not today. I just haven't made the API for it, really, so it should be included in the next version.
Architeuthis wrote: Fri Dec 10, 2021 12:52 am Is there a way to see all console errors? Currently, we are limited to what fits on screen as there is no scroll bar. Is there a file created with the rest of the text?
You can enable this in the config.cfg:

Code: Select all

application:
{
	log_console = true;
(it's false by default)
soundmodel wrote: Tue Jan 25, 2022 3:15 pm How much overhead is there in APE? I mean, if one wanted to program e.g. a high-quality reverb, then is there too much bottleneck?
This is using (at the time of release at least) the newest version of clang/llvm, which is some way ahead of the apple toolchain. Additionally, it compiles directly for your specific CPU. All that to say it should be as fast as your normal C++ experience, and has the chance to outperform normal toolchains.
You don't really have access to multithreading (I mean.. unless you're sneaky), which might limit the available throughput though.
thingschange wrote: Sat Feb 05, 2022 1:27 pm You must be a Daniel Lanois fan?
I'll take that as a compliment? :)

Post

Mayae wrote: Sat Feb 05, 2022 3:19 pm
soundmodel wrote: Tue Jan 25, 2022 3:15 pm How much overhead is there in APE? I mean, if one wanted to program e.g. a high-quality reverb, then is there too much bottleneck?
This is using (at the time of release at least) the newest version of clang/llvm, which is some way ahead of the apple toolchain. Additionally, it compiles directly for your specific CPU. All that to say it should be as fast as your normal C++ experience, and has the chance to outperform normal toolchains.
You don't really have access to multithreading (I mean.. unless you're sneaky), which might limit the available throughput though.
Will there be multithreading support someday?

Post

soundmodel wrote: Sun Feb 06, 2022 9:53 am
Mayae wrote: Sat Feb 05, 2022 3:19 pm
soundmodel wrote: Tue Jan 25, 2022 3:15 pm How much overhead is there in APE? I mean, if one wanted to program e.g. a high-quality reverb, then is there too much bottleneck?
This is using (at the time of release at least) the newest version of clang/llvm, which is some way ahead of the apple toolchain. Additionally, it compiles directly for your specific CPU. All that to say it should be as fast as your normal C++ experience, and has the chance to outperform normal toolchains.
You don't really have access to multithreading (I mean.. unless you're sneaky), which might limit the available throughput though.
Will there be multithreading support someday?
Sure, but I guess before that how do we imagine it working? I could just make

Code: Select all

#include <thread>
compile, looks like I just need to fiddle a bit around in the standard headers. But building a usable and safe system out of that takes a lot of code, which you probably don't want to write in ape.

More likely what you want is a job system and some sort of parallelization model that lends itself well to partioned convolution or whatever.

Not to mention you might be competing against the DAW resources with multithreading, and there's a lower bound latency with deterministic throughput. But I still think it might make sense for research purposes.

Post

Mayae wrote: Sun Feb 06, 2022 2:19 pm More likely what you want is a job system and some sort of parallelization model that lends itself well to partioned convolution or whatever.

Not to mention you might be competing against the DAW resources with multithreading....
hmmm...if you want to go down that route, it would perhaps be good if it would play nicely with clap's upcoming multithreading support:

https://github.com/free-audio/clap/blob ... ead-pool.h

...if you are planning to support clap, that is (which i would consider a good thing to do (eventually, not as top priority) because vst2 is now being phased out for real and a replacement will be needed sooner or later)
My website: rs-met.com, My presences on: YouTube, GitHub, Facebook

Post

YO THIS IS DOPE!!

Post

Not sure how I missed this. Just checking in to offer congrats on this achievement...monumental effort.

On the other hand, I may be cursing you soon. Years ago I tried to get into DSP/VST stuff, but the lack of this kind of environment made it a bit too much trouble. I was trying to do some machine learning based stuff, and strangely after several years, it seems no one has yet done much in this area in the independent dev end of things.

Therefore I can see myself diving in again, when frankly I don't have time. The lure is strong. Will I ever learn?

Post

Hm, seems I'm late to the party ... APE looks very promising.
I skimmed through the source code and the documentation and it looks like MIDIis not supported. Is that true?

Asking because I recently did some experiments with Protoplug in the field of MIDI. Even did an upgrade of protoplug to make it use JUCE 6, added a better LUAJIT dll and added a VST3 build ... (all on my private/not yet released builds)

Anyway: Is there a chance that APE will support MIDI in the near future? Would be really cool!

Post

BTT wrote: Sun Feb 20, 2022 9:05 pm YO THIS IS DOPE!!
Cheers! :)
jamesd256 wrote: Fri Feb 25, 2022 4:51 pm Not sure how I missed this. Just checking in to offer congrats on this achievement...monumental effort.

On the other hand, I may be cursing you soon. Years ago I tried to get into DSP/VST stuff, but the lack of this kind of environment made it a bit too much trouble. I was trying to do some machine learning based stuff, and strangely after several years, it seems no one has yet done much in this area in the independent dev end of things.

Therefore I can see myself diving in again, when frankly I don't have time. The lure is strong. Will I ever learn?
Thanks. All I can say is follow your heart and curiousity! I think ML still mostly applies in analysis / interpretation, although some impressive generative things are happening.
] Peter:H [ wrote: Sun Jul 10, 2022 9:39 am Hm, seems I'm late to the party ... APE looks very promising.
I skimmed through the source code and the documentation and it looks like MIDIis not supported. Is that true?

...
Correct -
] Peter:H [ wrote: Sun Jul 10, 2022 9:39 amAnyway: Is there a chance that APE will support MIDI in the near future? Would be really cool!
It's slated for next version, which probably is in the near future. Problem is, near future for me is anywhere between 1 month and a year - it all depends on when I have a break between everything :)

Post

I have copied the Audio Programming Environment folder to my vst folder and there is no way to load this plugin, Ableton Live 11 on windows 10, can anyone help me?

Post

Dr.No wrote: Sun Jul 17, 2022 10:19 am I have copied the Audio Programming Environment folder to my vst folder and there is no way to load this plugin, Ableton Live 11 on windows 10, can anyone help me?
This might be a permission issue. The VST folder in Windows may has higher permissions, which could stop APE from reading the files it needs. Try using a different folder( and add the path to DAW ) or lowering the permissions on the VST folder.

Post

Hi, just wondering—is APE still being updated? I used it a long time ago, and recently moved a lot of my DSP code over to it. It's insanely efficient! No more Max/MSP prototyping! It would be awesome if it could link to external dynamic/static libraries too! But it seems like it's been quiet for a while.

Post

mEnZI1 wrote: Sun May 04, 2025 2:05 am Hi, just wondering—is APE still being updated? I used it a long time ago, and recently moved a lot of my DSP code over to it. It's insanely efficient! No more Max/MSP prototyping! It would be awesome if it could link to external dynamic/static libraries too! But it seems like it's been quiet for a while.
I cycle between this and Signalizer for updates, currently working on native macos arm builds.

Static linkage might be hard since the in memory "build system" doesn't use a linker in the traditional sense (though if I move to out-of-process processing, it might be different), but you could definitely do dynamic linking. Just include some shenanigans with dlopen/LoadLibrary

Post Reply

Return to “DSP and Plugin Development”