Home KXStudio > News
RSS

KXStudio : News

> Cardinal 22.05 has been released
On 2022-05-15 by falkTX

Hello everyone, yet another release of Cardinal is here.
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.

This is a big update with not just bug-fixes but also new modules and a few behaviour changes too.
Particularly interesting for existing Rack users is the inclusion of the popular Fundamental modules, though in customized fashion.
A new Audio to CV Pitch module also makes a debut, based on DISTRHO PitchTrackingSeries which was a shared effort for pushing the feature into hardware units.

cardinal-fundamental

Changelog

  • Add macos-intel build (smaller in size and better fit for intel-based macs)
  • Add main Cardinal variant for MOD builds
  • Add Audio to CV Pitch Core module
  • Fix buffer size not always correct in the Audio Unit plugin
  • Force UI keyboard focus (delayed focus grab after UI is open)
  • Mute audio output if bypassed
  • Remap Ctrl key + mouse clicks to right-click on macOS to better deal with its silly "one button" UX
  • Store a few more properties as plugin state, including favorites

Added plugins

Updated modules

Module fixes

  • Fix Core Audio2 meters stuck state when both L & R are disconnected
  • Fix Core Blank panel tags
  • Fix Core Host-MIDI-Map flooding console logs in case of error (only print the same error once)
  • Fix Core Host-Time reset trigger for hosts with non-static buffer sizes
  • Fix DrumKit Sequencer memory corruption
  • Fix mscHack PingPong filter cutoff value when loaded without GUI

Extra Notes

For packagers: fftw3f is now an optional dependency, required for "Audio to CV Pitch" module.
The module will built if fftw3f is available during build, otherwise disabled.

The "lv2export" stuff has been reworked and works now, includes 3 test plugins.
This allows to export individual modules as single lv2 plugins, with very minimal binaries and no UI.
For now it is still quite experimental, just to mess around with.
Future releases might enable them by default, still undecided.

Downloads

The source code plus Linux, macOS and Windows binaries can be downloaded at https://github.com/DISTRHO/Cardinal/releases/tag/22.05.
Cardinal is released as LV2, VST2 and VST3 plugin, plus AudioUnit and JACK standalone for certain systems.
The VST3 version is still considered experimental, prefer to use LV2 or VST2 if possible at this time.


> Correction: Changes in KXStudio repositories
On 2022-04-25 by falkTX

This is a quick correction to yesterday's post regarding changes in the KXStudio repositories.
I mentioned that the minimum required version was Debian 12 / Bookworm.
This is incorrect, the minimum is actually Debian 11 / Bullseye.

Apologies for the lapse, have a good day! :)


> Changes in KXStudio repositories
On 2022-04-24 by falkTX

For the impatient ones, the too-long-didn't-read short summary is:

  • Minimum required version to use the KXStudio repositories is now 20.04 / Focal or Debian 11 / Bullseye
  • i386 / 32bit systems are no longer supported
  • "Extras" repository has been marked as deprecated and should no longer be used

Updating base version to 20.04 / focal

As Ubuntu 22.04 was just announced, I began to do work on the KXStudio repositories once again.
They were using Ubuntu 18.04 as base for all builds, which is getting old now and only has 1 more year of support.
That last part is important - when 18.04 goes end-of-line, no new Launchpad PPA builds are possible.
And since the KXStudio project relies on those for its packages, I need to update the base version from time to time in order to be able to keep building things.

If you need to ask why using PPAs and not something else, there just isn't another service that can do all that is required (that I know of).
OpenSUSE's Open Build System is similar, but it cannot handle the inter-dependency of the different sub-repositories.
For example, a "toolchain" repo is used on all builds but not exported to the user, so it is safe to update things like cmake and meson only for the repository builds without breaking the user's system/packages.

The extreme alternative would be to move to ArchLinux and their new Unofficial Pro-Audio Package Repository, and while tempting, I think a lot of users would be disappointed and sad with that call.
And hosting the entire build setup myself is not going to happen, I do not have the capacity or funds for such a thing.

But back to the topic at hand, moving up on the base version for KXStudio package builds means the user-facing minimum version also goes up.

So as of today the minimum required version to use the KXStudio repositories is 20.04 / Focal or Debian 11 / Bullseye.
Newly installed systems can no longer use the old variant of the KXStudio repositories.
The old 18.04-base packages are not going to be updated anymore.

Issues with i386 builds

On 20.04 onwards, Ubuntu has disabled i386 PPA builds for all packages except those that are part of 20.04 release.
The move to 20.04 as repository base is already taking place and I did quite a few tests to try and workaround the build limitation, but from what I can tell it is just not possible.
This means the KXStudio repositories will no longer provide i386 packages.

Everything else will keep working, including armhf and arm64 packages.
Hopefully there are ways to still build a few 32bit things like wineasio and carla wine bridges, but those will be 64bit packages just with 32bit libraries.
I did not actually test for this yet, more news on it soon.

Deprecated repositories

The lack of i386 package builds makes it impossible to build system libraries as was the case for the "Extras" repository.
Without such packages it becomes pointless, so the "Extras" repository has been marked as deprecated and should no longer be used.

Somewhat related, the KXStudio "Music" sub-repository served no real use in the end.
And since now seems to be the time for cleanup and breakage, this one was marked as deprecated too.

Such deprecations make apt very unhappy, and it will begin complaining something like this:

E: Repository 'http://ppa.launchpad.net/kxstudio-debian/music/ubuntu bionic InRelease' changed its 'Label' value from 'Music' to 'Deprecated'
N: This must be accepted explicitly before updates for this repository can be applied. See apt-secure(8) manpage for details.

Just cleanup the apt list cache and the errors go away, like this:

 sudo rm -f /var/lib/apt/lists/*

If you were using the "Extras" repository and now have issues because JACK can not be installed or updated, you will need to revert it to the version from your official distribution repositories.
Run this to fix it, replacing "focal" by the linux distribution version label that applies to your case:

 sudo apt-get update
 sudo apt-get install libjack-jackd2-0/focal libjack-jackd2-0:i386/focal jackd2/focal

Final notes

I realize this will make a few people sad, if the i386 builds were something you were relying on.
It pains me too, as this kinda encourages throwing away old usable hardware that cannot do 64bit.
Moving away from Debian base is not something I want to do at this point, but keeping 18.04 as base is not sustainable, as builds for it will soon stop working.
And doing full custom repositories is a massive endeavour, something I don't have the time and resources (or patience) for.
In the end, I am grateful to still be able to push new builds.

Speaking of new builds, those will still take a bit to appear, as I have decided to do things a bit better this time.
Using Ubuntu 20.04 as base allows to update the "debian format" to 13 which simplifies the builds, all packages are being converted one by one.
Also, I am uploading all debian source details on a public git repo, as a backup/precaution measure and also to more easily allow others to see how packages in the KXStudio repositories are done.
I do not really expect contributions that way, but more transparency is always nice.

Based on previous work done for continous-testing in Carla and DPF, I want to setup similar runtime tests for all plugins before they get pushed into the repositories.
Compared to just a few years ago, testing plugins is now much easier, with Carla having a dedicated command-line test mode, LV2 validation tools becoming better and even lv2lint that performs runtime tests.

I still want to finalize a few things in Cardinal before going full-force on the repositories, but that side is almost done now, so very soon my attention can go back to packaging.
Good times ahead!


> Carla 2.4.3 has been released
On 2022-04-15 by falkTX

This is a small bugfix release for the Carla v2.4 series.

carla

Carla is an audio plugin host, with support for many audio drivers and plugin formats.
It has some nice features like automation of parameters via MIDI CC (and send output back as MIDI too) and full OSC control.

Fixes

  • Fix build for Alpine Linux and BSD
  • Fix integration with internal Qt toolbar visibility state
  • Fix plugin search (regression from 2.4.2)
  • Fix several Windows UTF-16 issues

Build related changes

  • Add -fno-gnu-unique to default build flags
  • Implement VERBOSE make flag
  • Make build compatible with LTO, now enabled on official macOS/Windows binaries
  • Replace CARLA_EXPORT macro with separate API / PLUGIN export options
  • Set new X-NSM-Exec desktop file property

Downloads

To download Carla binaries or source code, jump on over to the KXStudio downloads section.
If you're using the KXStudio repositories, you can simply install "carla".
Bug reports and feature requests are welcome! Jump on over to the Carla's Github project page for those.

Notes for users

This was already the case for v2.2 and v2.3 but it is worth reiterating:
When using JACK2, the canvas - plugin integrations requires at least JACK2 v1.9.13.
This is because Carla relies on JACK meta-data in order to store information about each plugin/client, and meta-data was only added to JACK2 in version 1.9.13.
Alternatively, you can use JACK1 instead of JACK2, which has meta-data support since a long time.

Also there are still no official Linux binary builds for v2.4.3.
Carla v2.4.3 is provided in the KXStudio repositories and in many official Linux distribution repositories anyway.


> Cardinal 22.04 released
On 2022-04-05 by falkTX

Hello everyone, yet another release of Cardinal is here, this time focused on bugfixes.
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

Changelog:

  • Add Interverb demo patch (in source code)
  • Add retrigger to Host-MIDI
  • Do not show resize handle on JACK Standalone
  • Fix and enable ChowDSP Credit module
  • Fix potential noise burts on load with ihtsyn MVerb-based modules
  • Fix messed up graphics on Windows with High-DPI screens
  • Fix resources not found on some Windows systems (by not relying on environment variables)
  • Fix several Windows UTF-16 issues
  • Fix X11 file dialogs not appearing on some systems (auto-activate needed DBus portal)
  • Fix VST3 state under some hosts
  • Make JACK Standalone more useful on Windows (log to console when possible, show error dialog if JACK not running)
  • Optimizations to core modules and headless build
  • Refresh default template, add FX and Synth specific template variants
  • Tweak Host-MIDI default parameters

Downloads

The source code plus Linux, macOS and Windows binaries can be downloaded at https://github.com/DISTRHO/Cardinal/releases/tag/22.04.
Cardinal is released as LV2, VST2 and VST3 plugin, plus AudioUnit and JACK standalone for certain systems.
The VST3 version is still considered experimental, prefer to use LV2 or VST2 if possible at this time.


Next →