refactor(task): OTIO load/save tasks over oaknode/oaktimeline C ABIs
- LoadOTIOTask/SaveOTIOTask de-Qt'd: graph traversal and construction through oaknode C ABI (find_input_footage, sequence defaults, block factories, context positions), track creation through oaktimeline's add_track command; the OTIO import dialog becomes a facade callback (headless default: accept all) - oaknode additions: find_input_footage, sequence_set_default_parameters - USE_OTIO + otio-install libs wired into oaktask; OTIO dylibs copied next to liboaktask for @loader_path resolution - OTIO round-trip test passes; build-oaktask 106/106 green
This commit is contained in:
@@ -70,6 +70,25 @@ int oaktask_import_invalid_count(OakTaskTask *t);
|
||||
int oaktask_import_invalid_at(OakTaskTask *t, int index, char *buf,
|
||||
int buf_size);
|
||||
|
||||
/** @brief olive::LoadOTIOTask. */
|
||||
OakTaskTask *oaktask_create_project_load_otio(const char *filename);
|
||||
|
||||
/** @brief Take the loaded project (ownership transfer). */
|
||||
OakNodeProject *oaktask_load_otio_take_project(OakTaskTask *t);
|
||||
|
||||
/** @brief olive::SaveOTIOTask. */
|
||||
OakTaskTask *oaktask_create_project_save_otio(OakNodeProject *project,
|
||||
const char *filename);
|
||||
|
||||
/**
|
||||
* @brief OTIO import confirmation callback (facade concern; default
|
||||
* accepts everything). Return non-zero to accept.
|
||||
*/
|
||||
typedef int (*oaktask_otio_import_confirm_fn)(
|
||||
const char *const *sequence_names, int count, void *userdata);
|
||||
void oaktask_load_otio_set_confirm_cb(oaktask_otio_import_confirm_fn fn,
|
||||
void *userdata);
|
||||
|
||||
/** @brief olive::PreCacheTask. */
|
||||
OakTaskTask *oaktask_create_precache(OakNodeFootage *footage, int index,
|
||||
OakNodeSequence *sequence);
|
||||
|
||||
Reference in New Issue
Block a user