What's new in Carla 2.5.8
Feb 1, 2024
- Fix double backslash encoding in pre-included serd
- Fix a few minor ttl details in carla.lv2 (to make validators happy)
- Fix potential audio buffer overflow issues due to over-optimization in math utilities
- Fix winevst for DLL_PROCESS_ATTACH
New in Carla 2.5.7 (Oct 1, 2023)
- Allow configuration of Carla client name when headless (via CARLA_CLIENT_NAME env var)
- Fix save missing LV2 files
- Fix some wine bridge details
New in Carla 2.5.6 (Aug 4, 2023)
- Fix compatibility of plugin discovery with newer 2.6.x tools
- Fix crash when using JACK under Linux ARM
- Fix carla-lv2 pre-run with 0 frames
- Fix carla-vst GUI for high-dpi screens
- Fix carla-native-plugin library exported symbols
- Show custom error message when trying to start JACK driver without JACK
- Skip special treatment for LADISH (do not set session management hints)
New in Carla 2.5.5 (Aug 1, 2023)
- Allow IPC during plugin discovery (controlled by external tools)
- Expose a few extra APIs in carla-utils library
- Install extra carla-utils related headers during make install
- Fix invalid/empty LV2 paths for compatibility with lilv
- Fix LV2 plugin state for plugin bridges
- Fix showing engine device settings on systems without JACK
- Fix usage with LMMS on Windows
- Remove use of REAL_BUILD macro, no longer needed
- Tweaks for integration in OBS
- Other minor fixes and cleanup
New in Carla 2.5.4 (Mar 12, 2023)
- Fix crash/regression when using LV2 plugins without worker extension
- Fix compat with PyQt >= PyQt 5.15.8
- Fix macOS build
- Simplify JACK event handling, now using a single queue on the main thread
New in Carla 2.5.3 (Jan 15, 2023)
- Always set time frame information for JUCE hosted plugins
- Fix canvaspreview out-of-bounds panning for patchbay
- Fix receiving LV2 atoms bigger than 32kB
- Fix peak metering reading values out of bounds
- Fix missing </li> code in about information string
- Support the more verbose LV2 MIDI CC definitions
- Use SDL driver by default on Haiku
New in Carla 2.5.2 (Oct 14, 2022)
- Fix includedir/libdir variables in pkg-config files
- Fix LV2 plugins sending MIDI events out of order when using MIDI mapping for control output ports
- Fix VST2 all-notes/sound-off events after re-activation
- Fix "use outer frame for carla-lv2" from v2.5.1
- Correct jackbridge build flags, prevent LTO from being used in wine stuff
New in Carla 2.5.1 (Oct 1, 2022)
- Do not set scale factor for LV2 plugin UIs on macOS
- Fix external MIDI connections for JUCE engine driver
- Fix a few memory leaks and runtime issues
- Fix several race conditions
- Fix logic around engine driver listings
- Fix position of external patchbay graph nodes not being restored when switching from internal to external
- Fix RISC-V builds
- Fix win32 bridge builds on win64 systems (forcing usage of i686-w64-mingw32 if needed)
- Ignore some compiler warnings from Qt side
- Use an outer frame for carla-lv2 outgoing events
New in Carla 2.5.0 (Jul 16, 2022)
- Add JSFX plugin support
- Add SDL engine driver
- Adapt engine code to allow single-threaded web-assembly builds
- Fix macOS installer to run without rosetta2
- Use full driver settings dialog if opened via menu and engine is not running
- Update built-in DPF
- Update to JUCE 7.0.1
New in Carla 2.4.3 (Apr 16, 2022)
- 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
New in Carla 2.4.2 (Feb 19, 2022)
- Fixes:
- Fix a few crashes with JACK applications inside Carla
- Fix build on non-supported systems by JUCE
- Fix crash when LV2 X11 UI has non-mapped child window
- Fix compatibility with Python 3.10
- Fix default SF2/3 path
- Fix LV2 UI resizing on macOS
- Fix missing VST3 plugins not being searched recursively
- Disable GraphicsScene indexing method to prevent crashes
- Ensure custom data state save and restore always match
- Changes:
- Add "[carla]" prefix to printed messages
- Add appdata metadata information
- Add notice when Carla needs to be restarted after an LV2 rescan
- Add VST3 Windows common files to the default path (required by the latest VST3 spec)
- Default to JACK backend if pipewire-jack replacement is installed
- Implement dry/wet, volume and balance on JUCE hosted plugins
- Reload audio file if sample rate changes
- Use temporary files for big custom data values in bridges
- Changes for using Carla as library:
- Add 8 CV, 32 IO and 64 IO CarlaPatchbay variants
- Add audio port hints to backend, starting with lv2 sidechain
- Add static plugin build target
- Add WITH_LTO build option, disabled by default
- Allow setting a custom C++ namespace
- More work on experimental embed plugin UIs, now also possible on plugin bridges
New in Carla 2.4.1 (Oct 15, 2021)
- 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
New in Carla 2.4.0 (Aug 21, 2021)
- 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
New in Carla 2.3.2 (Aug 8, 2021)
- 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
New in Carla 2.3.0 (Apr 16, 2021)
- Fix a float vs int usage, which will break in python soon
- Fix cancelling plugin discovery
- Fix main client name for multiple carlas inside NSM
- Fix missing vst3 poly aftertouch
- Fix patchcanvas use of keyboard modifiers
- Fix project filename/folder only set after saving once
- Fix recursive VST2 audioMasterAutomate parameter changes
- Fix sorting plugins by favorite
- Do not run 2nd instance of lv2 plugin if it has event output(s)
- Read lv2 midi:binding on control ports and parameters
- Use Ctrl+P to open/close side panel
- Use fixed buffers on standalone bridge mode
- midipattern: overall fix up
- midipattern: use Esc key to close UI
New in Carla 2.3.0 RC1 (Feb 18, 2021)
- macOS arm64/universal build support:
- Starting with v2.3, Carla natively supports the new macOS arm64 architecture, used in the new M1 hardware models.
- The Carla macOS universal build supports x86_64 and arm64 architectures at the same time, and should run on anything 10.12 or newer.
- As Carla has support for plugin bridges (even across architectures), I took care to make sure that the arm64 version can load x86_64 plugins.
- When a plugin fails to load in a specific way, Carla will try to load it again but now in x86_64 mode.
- This is currently working for VST2 and VST3 plugins.
- Additionally, for something that kept bothering me a lot, Carla will automatically remove plugins from macOS quarentine before loading them.
- This is not possible to do for AudioUnits as we do not have the full path to the plugin binary, but valid for all other formats.
- No more security theatre shenanigans here! :)
- General improvements to AudioFile plugin:
- The AudioFile internal plugin received some deserved attention this time around.
- Besides basically reworking how its disk-streaming functionality (more robust and much less CPU usage),
- it finally can do resampling so it will sound correctly no matter the sample rate.
- Additionally mp3 support was added via dr_mp3, as libsndfile used by it does not yet officially support it.
- Both Audio and MIDI file plugins are now exposed as LV2 plugins, allowing to load and use these plugins outside of Carla.
- It supports file parameter plus patch Get/Set with State mapPath as expected for these kinds of plugins.
- The experimental "inline-display" of the AudioFile is also exposed as an LV2 feature.
- Reworked Windows builds:
- The infrastructure used to build Windows binaries is now through PawPaw, as done with JACK2 already.
- With this, I have control over the whole toolchain and libraries that are used in Carla Windows binaries (previously msys2 packages were used).
- For users, this means these binaries are more robust and with less dependencies.
- (I am building with static libraries as much as possible, so no more ligcc/libstdc++6 mess).
- The Windows zip file download no longer ships with a single Carla.exe, instead please run Carla.exe inside the Carla folder, should be easy to spot.
- For developers, a nice side-effect is that we can finally tweak the behaviour of the startup executable, now allowing debug messages to be seen. (though you need to run it in Console/PowerShell for that)
- The libraries that allow to use and talk to Carla Host API are now provided on these builds.
- Finally, it should be possible to build Carla under msys2 on Windows now.
- I can make a quick tutorial if that is something that interests you, let me know if that is the case.
- Use system/desktop theme icons (non-macOS/Windows only):
- Due to popular demand, there is now an option in the experimental settings to use system/desktop theme icons.
- This will remain as experimental feature for 1 release, so we can catch potential issues in the mean time, and fix them.
- Since I do not mind the default Carla icons (quite like them actually), this is not meant for me.
- Feel free to use it and report back if you spot something weird or incorrect.
- Other notable changes:
- Allow trun CV plugins in rack mode, with CV connected ta dummy port
- Carla-Control nlonger has return remote url option, nlonger needed after some fixes
- Clear up situation with nogui and carla-osc-gui script (explanation article tcome later)
- Disable OSC by default on macos (needs task permission tuse network, which may look suspicious)
- Dnot build external plugins by default
- General improvement tLV2 parameter API support
- Many, many bug-fixes (not listed here, see the git commit history for the raw changes, including bug-fixes)
New in Carla 2.2.0 RC 3 (Sep 22, 2020)
- Do not allow to capture logs on Windows, even if enabled
- Do not enable all 64 max buses for AU plugins
- Do not put plugin UIs "always on top" in Windows
- Fix macOS 10.12 build, so that it actually runs under 10.12
- Fix macOS README, mentioning new plugin situation (package vs actual files to manually copy)
New in Carla 2.2.0 RC 2 (Sep 7, 2020)
- Add xycontroller plugin
- Auto-select text in plugin search entry when focused via shortcut
- Compress canvas clipboard image saving (as PNG)
- Disable OSC by default on macOS
- Fix crash when receiving unexpected VST2 time information
- Fix current project filename persistence after engine stop
- Fix deadlock when using VST3 plugins inside Carla as plugin
- Fix listing LV2 plugins on Windows (2.2 regression)
- Fix oddities with MIDI learn
- Fix potential crashes when opening or hiding plugin UIs
- Fix some plugins not having all their audio ports exposed
- Fix some plugin UIs not in front of Carla when first shown
- Fix wine bridge build against winehq-stable and winehq-stable
- Overall fix to midi pattern plugin
- Package macOS plugin version, making Carla-Plugin usable with macOS 10.15
New in Carla 2.1.1 (Jun 11, 2020)
- Fix carla-control not handling CLI argument for custom address
- Fix carla-plugin not handling all callbacks
- Fix carla-plugin LV2 UI not showing up if host supports touch feature
- Fix for some plugin formats having 0 audio ports
- Fix occasional crashes due to canvas shadow (Qt bug, shadow is disabled by now)
- Fix canvas ports text width calculation with new Qt
- Fix wrong assertion with size 1 MIDI messages
- Fix errors in the icons
- Fix incorrect base conversion for MIDI CC assignments
- Fix rpath specification in pkg-config files
- Fix build with Qt 5.15
- Discovery: Force language to be "C" (English) so we can parse errors
- Discovery: assume midi inputs = 1 if VST plugin is synth
- Make canvas ports and groups ignore middle mouse clicks
- Improve performance of canvas "inline display" rendering
- Other miscellaneous bug fixes
New in Carla 2.1 (Apr 13, 2020)
- Add a simple cv2audio plugin
- Brown color for CV ports, to make them more easily recognizable
- Fix crash loading LV2 plugin with CV and latency ports
- Fix mingw/gcc-9 build
New in Carla 2.1 RC2 (Mar 31, 2020)
- Fix crash on stack unwind for a few operations
- Fix duplicate data (name, label, uid) used in VST synth/fx Shell plugin
- Fix JACK metadata usage for multiple carla instances and plugin renames
- Fix MIDI CC assignment showing wrong selected value (base 16 vs 10)
- Fixup carla-control (was broken in RC1)
- Optimize and reduce memory usage of UI bridges
- Overall fix of postponed RT events
- Give focus to bridged UIs when first shown
- Ignore any LV2 patch:writable that is not an lv2:Parameter
- Rename experimental "prevent bad things" option and give it a tool-tip
- Support the new LV2 UI requestParameterValue API
- Support the new LV2 UI background/foreground color API
- Many other miscellaneous bug fixes, see the git log for details
New in Carla 2.1 Beta (Oct 8, 2019)
- Trying out the new mingw, and also the new pyqt based on msys2.
New in Carla 2.0.0 (Apr 1, 2019)
- Fix missing argument in note-on/off osc example
- Fix word-wrap in add-plugin dialog
- Fix Windows README.txt line endings
- Build windows binaries with -mstackrealign
- Don't show side panel in carla-control
- Show "Label/URI" instead of just "Label"
- Keep application signals alive (so Ctrl+C works even while engine is closed)
- Update copyright year
New in Carla 2.1 Alpha1 (Jan 31, 2019)
- A release for a Windows VST plugin version for testing.
New in Carla 2.0 RC3 (Jan 14, 2019)
- Fix bridge-lv2-x11 crash when manually started from CLI
- LV2: Don't prefer plugin bridges for certain hardcoded plugins (Calf, ir.lv2 and v1 series)
- VST: Do not call plugin effEditIdle on update display opcode, fixing crashes for a few plugins
New in Carla 2.0 RC2 (Oct 30, 2018)
- General fixes:
- Fix build against fludisynth 2.0
- Fix build on Haiku OS
- Fix build with external plugins enabled but no OpenGL available
- Fix detection of old Windows dll plugins
- Fix dynamic/split process cycle for plugin bridges
- Fix internal plugins receiving wrong frame position on split buffers
- Fix program changes coming through as bank changes in MIDI output
- Fix a possible race condition in plugin code
- Fix some warnings triggered by gcc-8
- Fix LV2 plugins with UI feedback ports in bridge mode not receiving feedback events
- Fix macOS specific note visible in settings when not running macOS
- libjack: Fix applications that register clients right after being started
- Usability fixes:
- Always show keyboard in plugin edit dialog if plugin has midi inputs
- Always expand user home path (~/) when loading project from CLI
- Don't try to find binary type of certain plugins when loading project (avoid assertions)
- Use executable basename on jack apps as name when initial name is empty
- libjack: Catch window close when possible, and hide it instead closing entire application
- libjack: Implement basic session management via SIGUSR1 signal
New in Carla 2.0 RC1 (Sep 17, 2018)
- Big windows fixes:
- Carla under Windows has always a been a bit behind, compared to its Linux and macOS support.
- Not anymore!
- Carla can now run as a plugin in Windows, and also the PyQt-based big-meter, midi-pattern and notes plugins.
- With this done, Carla as LV2 is now included in the Windows builds.
- The export of a single plugin as LV2, though it is an experimental feature, now also works on Windows.
- Because Windows does not handle symlinks very well, Carla copies its resources instead.
- Scanning plugins will no longer show a console window.
- The font engine was changed from native to freetype, which not only fixes the mini-canvas but gives a better presentation too.
- Plugin bridges work once again, and now even better as Carla now initializes Windows resources on them (like static pthread and OLE).
- UI changes:
- The piano-keyboard widget got some attention, now has 4 different highlight colors, 3 input layouts (qwerty, qwertz and azerty) and allows to change the offset when using the PC keyboard to send notes.
- Just right-click on a piano-keyboard widget to trigger these options.
- The rack looks a bit different now, as the possible "skins" for the plugin slots are now exposed and can be changed at any time.
- You can change the background color too. Because why not? :)
- The knobs and rack buttons are now more white-theme friendly.
- This was needed to get white backgrounds working correctly, so for those of you that prefer Carla in a more bright theme, it will behave better now (why would you do that though?)
- Other changes:
- Some changes that make sense or are useful enough, and that deserve to be mentioned.
- Allow control output parameters to go out of bounds, thus displaying the correct value
- Automatically restart plugin bridges when plugin is re-activated, using last saved state
- Don't allow to disable jack transport if running in multi-client mode
- Don't close and re-open VST plugin UIs on show/hide
- Don't change any engine settings if it currently running
- Don't list lv2 plugins that are not supported
- Don't make Windows or macOS plugin UIs resizable for now
- Implement loop-mode for audio-file plugin, turn it on by default
- Implement support for buffer size changes in RtAudio JACK driver, and ignore JACK sample rate mismatch
- Implement SF3 support (SF2 files with OGG audio files instead of raw WAV)
- Force fftw thread-safe mode when starting Carla as standalone
- Plugins with more than 2 audio ports can now be loaded in rack mode (the extra ports are just ignored)
- Save and restore BPM with a project
- Save and restore last used BPM, if not loading a project
- Fixes:
- Besides the ones already mentioned for Windows, we also have:
- Big push to get transport working correctly
- General fixes against dynamic buffer sizes
- Several fixes to UI size and UI bridges under macOS
- Fix all PNGs that triggered libpng warnings
- Fix canvas rubberband being invisible after a canvas refresh
- Fix embedded UI covering window controls under certain hosts (in a Qt5 Linux build)
- Fix switching plugin positions in plugin mode
New in Carla 2.0 Beta 7 (Jul 23, 2018)
- Add confirmation dialog for quitting Carla
- Add confirmation dialog for "Remove All" and "New File" actions
- Add internal MIDI Channel A/B plugin
- Add semitones parameter to internal midi-transpose plugin
- Implement move up/down plugins in rack (right-click menu)
- Implement LV2 UI port notifications to feedback messages to UI
- Implement more libjack stubs, Catia now loads inside Carla :)
- Transport controls are now considered stable and always enabled, no longer in experimental settings
- Disable ableton-link and audio kits search UI elements if not built/enabled
- Do not capture logs if running in nogui mode
- Do not use or check for kVstParameterUsesIntegerMinMax VST property
- Do not lockup on close in case audio driver stops working
- Export LV2 window is now a simple combo-box, making it more usable
- Save plugin author name in exported LV2 plugin
- Increase polling rate for non-gui mode (30 Hz), fixes slow OSC handling
- Fix mouse position offset of Carla-embed mouse events
- Fix processing of internal plugins with multi MIDI inputs
- Fix crash when closing a session containing bridges with Ctrl+C
- Fix patchbay/graph to work with variable buffer sizes
- Fix some issues regarding integer parameter control
- Fix controlling logarithmic parameters with MIDI CC
- Fix "MIDI CC 0x01" not selectable in some systems
- Fix loading of VST plugin parameters and LV2 state for plugin bridges
- Fix carla-single usage under ladish
- Fix file dialog filter of the internal MIDI file plugin
New in Carla 1.2.4 (Aug 1, 2014)
- Canvas does not save or restore connections.
- You need to use external session management for now.
- LADISH does not support multi-client JACK applications.
- To prevent any issues Carla will switch to single-client mode automatically.
- Rack mode is still a bit experimental, specially on non-JACK drivers.
- LV2 plugin support is incomplete (although already in a good state).
- Plugins that use CV ports, multiple MIDI ports or Worker extension will not work right now.
- Carla will not work with non-native LV2 Plugin UIs that require the instance-data extension.
- This is by design and not a bug.
- OSC control seems to work well, but has not been tested in great detail.
- Be sure to report any issues.
- Carla "PRO" theme, Carla-Control and ZynAddSubFX internal plugin are not available for Windows at this point.
New in Carla 1.0.2 (Aug 1, 2013)
- Canvas does not save or restore connections.
- You need to use external session management for now.
- LADISH does not support multi-client JACK applications.
- To prevent any issues Carla will switch to single-client mode automatically.
- Rack mode is still a bit experimental, specially on non-JACK drivers.
- LV2 plugin support is incomplete (although already in a good state).
- Plugins that use CV ports or Worker extension will not work right now.
- Carla will not work with non-native LV2 Plugin UIs that require the instance-data extension.
- This is by design and not a bug.
- OSC control seems to work well, but has not been tested in great detail.
- Be sure to report any issues.
- Carla "PRO" theme, Carla-Control and ZynAddSubFX internal plugin are not available for Windows at this point.