Ardour 7.4 released

Ardour 7.4 is now available. This is mostly a bugfix release — several important ones have accumulated since 7.3 — but there is also a sprinkling of new features, notably MIDI subgroup busses.

There has also been a lot of work on features that we had hoped to have ready for 7.4, but will now be officially released in 7.5. The curious may find some of them already, but we're not ready to announce or document them yet.

One other small change for this release: people interested in just trying Ardour out via our free/demo build will no longer have to wait to get an email containing the link. We've decided that after 10 years of asking people for their email address and doing nothing with them, we'll just stop asking and provide the download link directly.

a screenshot showing Ardour 7.3


New Features

  • Add a volume control to the clip picker.
  • Add a preference item for the PPQN value in exported MIDI files.
  • Add an option to use a neutral color for new tracks & busses.
  • Add support for MIDI subgroup busses.
  • Add Lua DSP processor to downmix 5.1 to stereo.


General Plugin Support

  • Hide plugin properties marked "invisible" in the generic plugin GUI.
  • Allow to disconnect all plugin pins

VST2 Plugin Support

  • Fix crash when dragging VST2 presets from the sidebar to a track.

VST3 Plugin Support

  • Try to match a plugin’s speaker arrangement with its pin outputs.
  • Correctly configure stereo plugins on mono tracks.
  • Skip redundant parameter changes.
  • Notify GUI when plugin parameter names change.
  • Update parameter and bus names on plugin’s request.
  • Fix deadlock when loading a preset.
  • Clarify scan-log messages, be less verbose.

UX/UI Improvements

  • Improve naming and tooltips for the color palette.
  • MIDI input-follows-selection behavior now obeys the selection property on track groups (if you select a MIDI track that is part of a group sharing the selection property, then the relevant MIDI input(s) will be connected to all MIDI tracks in the group, not just some random member of the group).
  • macOS/Coreaudio: notify the user when a device disconnect occurs (for example, if you unplug a USB audio interface).
  • When adding an audio track or bus, the custom channel count now asks about the number of channels, instead of starting with 0.

Bug Fixes

  • A major, deep design fix that corrects a problem that has affected control surfaces for several years. This is hard to describe but essentially, it would often be necessary to reload a session/restart the audio/MIDI engine in order to get control surfaces to function.
  • Fix audio file names when importing files with > 2 and <= 26 channels.
  • Fix setting to add/remove silence at start/end of exported files.
  • Make regions transparent when dragging fade in/out handles.
  • The ask-about-quitting dialog is now always shown at the mouse pointer position.
  • Disambiguate export formats that are similar except for encoder settings (allow to export multiple mp3 or ogg files at the same time).
  • Fix handling of VCA button events.
  • Check that an export channel is not empty.
  • Fix silent stem export channels.
  • Fix ordering of ripple editing when multiple, non-contiguous regions/ranges are involved.
  • Fix behavior when importing a ProTools session to a session with existing tracks.
  • Fix race condition when closing a session.
  • Fix blurry text on macOS Retina displays.
  • MIDI tracer now shows MIDI Tick (0xf9) messages.
  • Fix MIDI Clock generator beat position.
  • Improve MIDI Clock timecode master: honor start/stop messages, use a DLL to accurately track BPM, allow to quantize BPM.
  • Correctly set default value for LV1 logscale controls
  • The delete & backspace keys should now more consistently delete automation points and plugins/processors.
  • Correctly align the metronome when recording it to a track.
  • Fix occasional (position dependent) crash when consolidating range.
  • Fix crash when reconfiguring (adding/removing) ports of latent plugins.
  • Fix interpolation of MIDI control-change and pitchbend message.
  • Fix crash at startup if a recent session file contains invalid UTF-8 names.

Control Surfaces

  • FaderPort8: show parameter values as formatted by the plugin.
  • FaderPort8: fix duplicate makeup control.
  • Push 2: holding shift while using the touch strip causes it send modulation instead of pitchbend.
  • X-Touch: now shows track colors.

Source code changes

Behind the scenes, or under the hood, people tracking source code changes may have noticed a major transformation in the program last month, when we moved from using Boost for our reference-counted pointer implementation to the C++ standard library. In reality though, this wasn't really a change at all, since Boost did that anyway — we've effectively been using the libstdc++ version since we officially started using C++11 (with Ardour version 7.0). It's just that now if you actually read Ardour's source code, you will see std::shared_ptr and friends, rather than boost::shared_ptr.

We also started using std::atomic which provides better control over memory access ordering than the C-language Glib atomic API we used before. It is likely that there is more work to be done to get our use of this tricky and hard-to-understand API completely correct, but it certainly helps with code readability.


Updated: Korean, German, Russian, French

Added: Catalan


Code: Robin Gareus, Paul Davis, Ben Loftis, Damien Zammit, Marijn Kruisselbrink , Todd Naugle, alex, luzpaz, Stefan Westerfeld, Ayan Shafqat, John Emmas, Nil Geisweiller

Translations: Alexandre Prokoudine, Edgar Aichinger, Xavi Ivars, Jungheee Lee, Olivier Humbert