13
0
livetrax/session_utils
Robin Gareus 3e27df9040
Utils: Fix crash at exit due to engine destruction
Ardour::cleanup destroys the TransportMasterManager instance
which unregisters TransportMaster ports. This will crash
if the engine was already destroyed.

See also 7c7bf6c88b
2023-06-15 16:22:23 +02:00
..
ardour-util.sh.in commandline session utilities 2015-12-16 00:25:07 +01:00
common.cc Utils: Fix crash at exit due to engine destruction 2023-06-15 16:22:23 +02:00
common.h
copy-mixer.cc Make RCU reader return a const pointer (omnibus commit) 2023-04-08 00:15:37 +02:00
debug
example.cc Update utility and tools GPL boilerplate and (C) from git log 2019-08-03 15:53:17 +02:00
export.cc switch from boost::{shared,weak}_ptr to std::{shared,weak}_ptr 2023-03-24 14:19:15 -06:00
new_empty_session.cc
new_session.cc
README
run
wscript

Ardour Session Utilities
========================

This folder contains some tools which directly use libardour to access ardour
sessions.

The overall goal it to provide some non-interactive unix-style commandline
tools, which are installed along with DAW.

These tools depend on the "dummy" backend to be available, configure ardour with e.g.

  ./waf configure --with-backends=jack,alsa,dummy ...


Adding new tools
----------------

One C++ source per tool, see "example.cc" and "export.cc"

  cp session_utils/example.cc session_utils/your_new_tool_name.cc
  edit session_utils/new_tool_name.cc
  ./waf

The tool is automatically compiled and deployed when installing, using the
program-name as prefix.  e.g.  "export.cc" becomes "ardour4-export"
(or "mixbus3-export", depending on the project configuration).
Tool names must start with lower-case alphabetic letter [a-z].


Test run from the source
------------------------

  cd session_utils
  ./run ardour6-your_new_tool_name

or

  ./run ardour6-export --help

and to debug the tool under gdb/lldb:

  ./debug ardour6-export