What features to add to Brickworks > 1.0.0

Started by stefano, Jan 19, 2023, 08:34 PM

stefano

The official web page already has a list of modules and features we want to have implemented for the first major release. This topic is to explore how the project could evolve later on.

I'll start with a list of features I'd like to have post 1.0.0:
  • wrappers for a number of formats/platforms/frameworks (e.g., JUCE, FAUST, Pure Data);
  • a free set of plugins with custom GUIs that more or less map 1:1 to Brickworks modules (VST3, CLAP?, LV2?);
  • CPU/architecture-specific optimizations and vectorization operations;
  • support for a number of embedded hardware platforms (Teensy, Daisy, ESP32, what else?);
  • documentation on the theory behind the implementation;
  • a killer app/plugin.
Personal website: https://dangelo.audio/

sletz

I'm still not completely clear about the relationship between Ciaramella and Brickworks projects. Are they completely separated or is part of Brickworks code expressed in Ciaramella then compiled in C?

stefano

They are totally separated.

I hope we will add support for importing Brickworks modules into Ciaramella in a reasonable time frame, but that's about it.
Personal website: https://dangelo.audio/

sletz

But is one of the Ciaramella DSL goal to be finally usable to generate Brickworks kind of code ?

stefano

Well, to be honest that's not a goal.

The point is that Brickworks is "just C". Modules do not have a standardized API, there's more of a common pattern, and there are going to be multiple APIs for each module.

Now, the only strong peculiarity is that the current ("low level") APIs separate coefficients and state very sharply, which should allow for much better multi-channel performance. However, I don't know if that sort of arrangement can be generated programmatically, that is something to think about.

In the long run I think that the C/C++ output from Zampogna will get closer and closer to Brickworks-like code, or whatever its evolution will be, though.
Personal website: https://dangelo.audio/