Move SimpleExport to libardour, add Lua bindings
This allows to export a session from the commandline tool
```Lua
AudioEngine:set_backend("None (Dummy)", "", "")
s = load_session ("/path/to/session", "snapshot")
assert (s);
e = s:simple_export()
assert (e:check_outputs ())
e:run_export ()
e = nil
```
This commit is contained in:
@@ -37,6 +37,7 @@
|
||||
#include "ardour/plugin_manager.h"
|
||||
#include "ardour/readable.h"
|
||||
#include "ardour/region_factory.h"
|
||||
#include "ardour/simple_export.h"
|
||||
#include "ardour/source_factory.h"
|
||||
|
||||
#include "LuaBridge/LuaBridge.h"
|
||||
@@ -534,6 +535,16 @@ ARDOUR::LuaAPI::wait_for_process_callback (size_t n_cycles, int64_t timeout_ms)
|
||||
return true;
|
||||
}
|
||||
|
||||
int
|
||||
ARDOUR::LuaAPI::simple_export (lua_State* L)
|
||||
{
|
||||
Session* const s = luabridge::Userdata::get <Session> (L, 1, false);
|
||||
void* ptr = luabridge::UserdataValue<SimpleExport>::place (L);
|
||||
SimpleExport* se = new (ptr) SimpleExport ();
|
||||
se->set_session (s);
|
||||
return 1;
|
||||
}
|
||||
|
||||
void
|
||||
ARDOUR::LuaAPI::segfault ()
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user