Home KXStudio > News
RSS

KXStudio : News

> Cardinal 22.02 is now released
On 2022-02-14 by falkTX

It is finally here, the first release of Cardinal.
Has been slowly brewing behind the scenes, and now ready for the masses.
First, some introductions...

cardinal

Cardinal is a free and open-source virtual modular synthesizer plugin.
It is based on the popular VCV Rack but with a focus on being a fully self-contained plugin version.

Cardinal was created first and foremost as a way to have Rack as a proper open-source audio plugin.
A proper audio plugin should be self-contained as much as possible, as to not interfere with the DAW/Host. Loading external modules clearly goes against this idea.
Not to mention being open-source, otherwise we are at the mercy of the wishes of a company for what we can and cannot do, which is not that great...
(in case you were not aware, VCV's Rack plugin version, called "Rack Pro", is a commercial closed-source product)

It needs to be said that Cardinal project and its authors do not wish anything bad to the original/official Rack project.
In fact, Cardinal wouldn't exist if not for Rack v2 release. (which has many needed things to make a plugin version work)
Cardinal and Rack should be able to co-exist friendly and peacefully, as they clearly have different targets.
It is likely most people will prefer to use Rack Pro for its official support and its big module collection (including commercial ones).
A feature comparison between Cardinal and Rack Pro can be seen here.

With that out of the way, let's go through a quick overview.

Plugin variants

Cardinal provides 3 plugin variants - Main, Synth and FX.
They are all equivalent in performance and behaviour, with only the IO and metadata that changes.
This is because some hosts are very strict on which plugins are allowed as instruments vs FX, so separate variants of the same plugin are needed.

FX and Synth variants both have 2 audio outputs, while Main has 8.
All variants have MIDI input and output support.

Main provides 8 audio inputs and outputs and 10 CV inputs and outputs.
Note that due to VST2 format not supporting CV ports, this variant is not available for VST2.

Synth provides 2 audio outputs but no audio inputs or CV ports.
Plugin type is set as "instrument".

And finally FX provides 2 audio inputs and outputs, but no CV ports.
Plugin type is set as regular "effect".

Included modules

At the moment the following 3rd-party modules are provided:

Additionally Cardinal provides its own modules for DAW/Host automation, time position and internal plugin hosting.

Current status and future plans

With the exception of a few bugs, Cardinal can be considered stable.
Though currently the following should be noted:

  • Keyboard input does not always work in some hosts #24
  • VST3 support incomplete/experimental #41
  • Windows 32bit builds do not work well #80

A parameter expander module was not ready on time for this release, but will come soon in a future release.
Fundamental is on a similar situation, there are some artwork license issues that prevent us from using Fundamental exactly as we want.
We plan to redo Fundamental's panel graphics in a more liberal license, so it then can be included in Cardinal.

There are a few modules we want to add, but they are being evaluated carefully as going forward anything we add in Cardinal needs to remain there forever, for backwards compatibility.
They must also have a GPLv3+ compatible license, which not all of them do.
Not to mention a clear artwork/graphics license... it is amazing how many of these projects do not care or understand about software licenses :(
Overall it makes packaging quite difficult, so it is natural that new modules are not added as fast as we wished for.

Something I hope to try soon is an alternative way to handle MIDI to CV conversion, as I don't like the way Rack does it at the moment.
The current Cardinal "core" modules follow the same exact approach as the official Rack, to make the transition easier, but some kind of "MIDI v2" modules will be done eventually.

Contributing

If you like the project and want to help out, there are basic building instructions here,
And an overview of the source code is available here.

Currently we are all on #cardinal IRC room in irc.libera.chat server.
Come join us in your favorite IRC client or through a Matrix bridge.

Installing new modules on an existing Cardinal binary is not possible at run-time, but we can add new modules to the build.
Details on this are available here.
Also check this wiki page where we discuss possible modules to include.

Installing and using

Install instructions are available on this wiki page.
If you are using the KXStudio repositories you can simply install cardinal-lv2, cardinal-vst2 or cardinal-vst3 packages as usual.
Consult the wiki page linked above for details on other distributions, or otherwise use the prebuilt binaries on the Cardinal releases page.

There is no Cardinal official media content as of yet, but if you are looking for tutorials just look for "VCV Rack" stuff which pretty much applies to Cardinal unchanged.
Some modules will appear slightly different, or not be available, but the overall idea on how to use it is the same.

A few CC-0 / public domain Cardinal patches are present directly in the source code.
You can use those as your starting point, they are fully free to do what you want with.

And that is it, go download, install and have fun!
If you find an issue or want to request a potentially useful feature, please use the Cardinal issue tracker.
And happy Valentine's day too. \o/