mirror of
https://github.com/Ardour/ardour.git
synced 2026-01-02 19:59:30 +01:00
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:
parent
0852f898a3
commit
2e860cd10d
6 changed files with 312 additions and 0 deletions
|
|
@ -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 ()
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue