KXStudio : News
>
Carla 2.4.1 has been released
On 2021-10-15 by falkTX
This is a bugfix for Carla version v2.4 series, bringing some improvements and fixing a few bugs.
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.
Changelog
- Better handling of VST3 parameters (hide as needed, number of steps, etc)
- Fix compatibility with Python 3.10
- Fix getting the proper X11 UIs size for more plugins
- Fix plugin bridges not automatically closing if main Carla dies on macOS (similar to how it is done on Linux)
- Fix unused parameters preventing real ones from showing up in the edit plugin dialog
- Fix CarlaNativePlugin.h and CarlaPluginPtr.hpp header files not installed system-wide
- Fix XY-Controller GUI missing on "make install" target
- Fix VST2 plugins under macOS and High-DPI (by not reporting scale factor)
- Replace -lpthread usage with -pthread, fixing RISC-V builds
- Send keyboard and focus events as needed/possible to VST2 and VST3 UIs
- Small tweaks to XY-Controller (make lines 1px thick, close UI with Esc key)
- Special tweaks for static plugin target build (embeding carla statically in other applications/plugins)
- Other minor fixes and tweaks
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.
Note that the "extras" KXStudio repository (which provides an updated JACK2) supports both Ubuntu 18.04 and 20.04.
The UbuntuStudio backports PPA also provides updated JACK2 packages.
There are no official Linux binary builds for v2.4.1 at this point.
Carla v2.4.1 is provided in the KXStudio repositories and in many official Linux distribution repositories too anyway.
>
KXStudio Monthly Report (September 2021)
On 2021-09-30 by falkTX
Hello all, it is time for yet another one of those monthly reports about the KXStudio project.
In case you missed it last month, there are now dedicated
KXStudio Board
and
KXStudio Development
pages.
These serve to give a quick overview of the work being planned and the one actively being done.
Note that I typically remove stuff from the "done" column of the board a few days into the start of each month.
VST3 for DPF
The first new thing worth mentioning is the substantial work for VST3 in
DPF
made this month.
Though it is still in a state I consider alpha at the moment, everything that is crucial is implemented:
from audio, midi, time position, parameters, programs, state, latency and gui.
Not recommended to release anything based on this yet, as there are memory leaks and the GUI only works on Linux at the moment (and known to break REAPER due to not plugging into the host runloop yet).
This VST3 implementation uses
custom C-compatible API headers
instead of the official SDK, so that we can have commercial plugins while not being tied to Steinberg and its restrictive licensing.
There is a lot of boilerplate code to implement for stuff that the SDK typically does for you, and it is still pretty unclean, but works for now for testing.
Worth noting that there is a clear DSP / UI separation for this VST3-compatible DPF implementation.
Instead of the UI having direct access to the DSP side and just calling functions, everything is passed through a VST3 "connection point" as messages.
There is something in place to support hosts that do not provide the "connection point" interfaces, so everything still works there too.
I expect to finalize the VST3 support already in October as there does not seem to be any technical limitation or blocker,
it is just time needed to implement all the things.
Sadly VST3 only officially specifies support for Linux, macOS and Windows.
DPF can build for more systems than just these 3, so I
made a question/request upstream
for how to tackle the issue.
Other DPF updates
In other DPF news, I began experimenting with supporting
Dear ImGui
as a widget implementation.
Everything already works except drawing on the correct position with high-dpi, there are some weird quirks to figure out in regards to the OpenGL viewport.
The target is to allow to use ImGui for the full plugin gui or just as a subwidget.
Other worthy mentions on DPF world are the
FEATURES
and
LICENSING
table, which should help people decide if DPF is worthy for them or not.
As you might know, DPF is liberally licensed (under ISC) so that it can be used for commercial plugins without restrictions.
Hopefully clearing the license situation helps on that side of things.
That is all for now.
There are some bug-fix releases planned, but that will be something for October.
If you appreciate the kind of work I do, please
consider a donation.
Thank you in advance for your support, and stay safe out there!
>
KXStudio Monthly Report (August 2021)
On 2021-08-31 by falkTX
Hello all, another one of those monthly reports about the KXStudio project is here.
This month as you might have seen we had
not one
but
two Carla releases.
Mostly bugfixes as expected, the new stuff was all very minor compared to past releases.
A few additonal things were added/fixed in Carla already since then, but all still very minor.
Whatever is ready by next release day (October 15) will be what gets in next, just to get a nice pace of releases going.
More (final?) DPF updates
DPF got a lot of attention once again.
It is now on a state where I can focus on bugfixes rather than new things,
even though I still want to try official SVG support.
Everything that was in the previous DPF (that is, the git
master branch)
should now be in the develop branch.
I am confident enough in this that made a new
"main" branch
to be the default clone target (I will keep the old master branch untouched, as there are a few minor things that can't be made backwards compatible).
Fixing high-dpi support
Something that got a fair bit of attention was high-dpi support.
Previously DPF read the scale factor from the host (if provided, most do not) but now it can also figure it out on its own as fallback.
There was a lot of
back and forth
until
it was verified
to
work on all major OSes and formats.
I also updated the DPF-Plugins project so that all plugins contained within it support this.
Even though some being bitmap-based causes their UI to look blurry, at least they will appear in the correct size.
You can see them in the screenshot below.
sofd improvements
Some care was given to the
sofd module
used by DPF as fallback X11 file browser dialog.
It serves us well enough because it generally works fine, but never looked that great in my opinion..
I spent some time to change its colors a bit to follow a more traditional/usual approach, plus a dark theme because yes.
And then on top make it work nicely for high-dpi setups too.
Not everyone uses dark themes, so there needs to be a light theme option too, not sure yet if it can be chosen automatically.
Personally I think it looks much better, but tastes are subjective. Anyway, the differences can be seen below:
(will submit the changes upstream after all the DPF file dialog stuff is finalized and stable)
External UI
As a final thing to mention for DPF, the last item that needed attention before the rework being in feature-parity with old branch, is external UI support.
The idea being that we can reuse DPF APIs and plugin export support but do the UI stuff completely separately - be it separate process or a custom implementation.
As long as it is in a way the plugin host expects things (ie, X11 window on Linux) things should just work..
The old DPF master branch didn't support this fully, but there was some experimental stuff in place.
Now it is back again, with a little
more documentation
and better support - it should eventually be an official DPF feature.
You can follow its discussion and progress
here
and because everyone likes screenshots, here is one as a quick test of mpv running as the external UI:
ProM revived
One little plugin I made quite some years ago but left it aside due to difficulties in packaging was
ProM.
ProM is basically
projectM
in plugin form, on top of DPF.
It allows you to have old-school milkdrop-like visualizations on your DAW/host, it is an audio plugin after all.
After a little fighting over building projectM correctly (directly in ProM source, aka "vendored"),
I can now say it builds and runs on at least GNU/Linux, macOS and Windows.
Taking from
last month's automatic build setup,
binaries are
automatically generated for these 3 OSes directly from GitHub.
To make Linux distribution packagers happy, the option to build against system-provided libprojectM is still present,
and should work even better now as it finds the shared data prefix to use via pkg-config.
Website updates
Worth of a little note, I updated the kx.studio website to better work in smaller screens, or vertical ones, or both like in mobile phones.
The content itself is mostly unchanged, still need to tackle that (specially documentation, there is a lot of old stuff there).
They typically call this "responsive design" I guess.
The news part I didn't update, as otherwise it would break RSS readers, and the top menu needs to become of one those "hamburguer"-style things when width is low. A task for later.
A final website update worth mentioning is the addition of the
board
and
development
pages.
As people sometimes wonder what I have been doing lately (specially important for those that give out donations, thanks for that by the way!)
the board view is now integrated into the site. I added color descriptions there too.
Hopefully that makes everything more clear, and more visible too of course.
That is all for now.
If you appreciate the kind of work I do, please
consider a donation.
Thank you in advance for your support, and stay safe out there!
>
Carla Plugin Host v2.4.0 is here
On 2021-08-20 by falkTX
Hello everyone, this is the announcement of the 2.4.0 version of the Carla Plugin Host.
If you do not know, Carla is a fully-featured cross-platform audio plugin host, which can also run as a plugin.
This release was initially meant to be 2.3.3 but there are some small new features so treating it as bugfix would be misleading.
Semantically-speaking, new stuff means new version, so 2.4 it is.
I was going to wait a bit more until a release, but it is Ubuntu feature freeze time, so got to go with what is available now in order to make it.
Anyway, let's go through the (small) release highlights.
![]() |
LV2 Gtk UIs on any system
After some changes on how Carla handles its Gtk UI bridges, it is now possible to build and use them on any system.
Currently there are no LV2 plugins released on macOS or Windows that make use of such a UI, but could change soon via
PawPaw. |
Full changelog
- Add option to use classic skin by default
- Add support for lv2 ui gtk bridges on any system
- Set display scale factor for carla-bridge-*/carla-single standalone usage (on macOS and X11 systems)
- Fix Linux VST3 plugin GUIs crash on close
- Fix build under msys2 (will not force static binaries)
- Fix keyboard focus for bridges on macOS (2nd attempt)
- Fix canvas icon in settings to be high-dpi compatible
- Fix wrong scale factor of plugin GUIs under macOS
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.
Note that the "extras" KXStudio repository (which provides an updated JACK2) supports both Ubuntu 18.04 and 20.04.
The UbuntuStudio backports PPA also provides updated JACK2 packages.
There are no official Linux binary builds for v2.4 at this point.
Carla v2.4 is provided in the KXStudio repositories and in many official Linux distribution repositories too anyway.
As always, if you appreciate the kind of work I do, please
consider a donation.
Thank you in advance for your support, and stay safe out there!
>
Carla 2.3.2 has been released
On 2021-08-08 by falkTX
This is a bugfix for Carla version v2.3 series, mostly fixing a few regressions with the previous release.
Changelog
- Add 32x32 icon
- Do not show --gdb in usage/help when not installed system-wide
- Fix default SF2 search path
- Fix keyboard focus for bridges on macOS
- Fix X11-UIs related regressions in v2.3.1
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.
As always, if you appreciate the kind of work I do, please
consider a donation.
Thank you in advance for your support, and stay safe out there!
← PreviousNext →