Ardour Development

Who Did This?

Ardour is a collaborative software development effort, representing the work of many people.

The Roadmap

Most of the design and development of Ardour happens in realtime via discussions on IRC. You won't see anything on this website, and very little on any of the mailing lists, that will indicate new designs and new ideas that we are working on. IRC allows the core developers to chat in realtime (or somewhat asynchronously, which is useful too), and hash out hard issues without the delays caused by email back-and-forth delays.

At present, there is no roadmap for future development, but there probably should be. This list is about as close as it gets.

Getting Involved

Ardour is written in C++ (with a little C and assembler thrown in where it makes sense). The graphical user interface is written using the gtkmm C++ "wrapper" around the GTK+ toolkit. The full codebase is currently at about 1M lines of code, which includes some 3rd party C++ libraries and our fork of GTK+ and Gtkmm. The user interface alone is about 210,000 lines while the backend ("engine") weighs in at about 160,000 lines. Ardour makes heavy use of an asynchronous signal/callback system as a way to provide anonymous coupling between components, particulular between the backend and user interface. The code makes heavy use of the Model-View-Controller programming model, and attempts to draw from the best work on programming pattern languages.

If you are interested in getting involved, join the ardour-dev mailing list, take a look at the bug/feature/issue tracker.

Using LLMs to generate code for Ardour

A word about licensing, copyright and LLMs ("AI"). We require all code contributed to Ardour to be licensed under the GPL (you may retain copyright, but the code must use the GPL). Currently, following Thaler vs. Perlmutter in March 2025, no LLM-generated code may be copyrighted in the USA. The GPL relies on copyright, and cannot function if copyright is not held. Consequently, if you use an LLM (Claude, Codex, CoPilot etc. etc) to create code, it cannot be included in Ardour

If you want to use LLMs to explore and understand some of Ardour's source code, feel free. But we cannot accept PRs or patches or contributions that are not licensed under the GPL, and if you choose to be honest about it, this means that no LLM-generated code can be accepted by us.

Git access

We run a self-hosted git server at git.ardour.org, which is read-only for everyone except core Ardour developers. If you want to get involved with development, you may prefer to use the mirror we have at GitHub. It will allow you to easily submit pull requests and carry out related tasks.

Debugging, crashes etc.

Reports about crashes with no further information is rarely helpful to the developers. You can give better crash reports if you're able to create backtraces of the crashes. Information on how to do that is available here.

Development Documentation