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:
@@ -103,6 +103,9 @@ typedef struct OakNodeNode OakNodeNode;
|
||||
/* Re-declared here so node.h is self-contained; see node/project.h. */
|
||||
typedef struct OakNodeProject OakNodeProject;
|
||||
|
||||
/* Re-declared here so node.h is self-contained; see node/footage.h. */
|
||||
typedef struct OakNodeFootage OakNodeFootage;
|
||||
|
||||
/**
|
||||
* @brief Opaque borrowed handles to the timeline data owned by viewer
|
||||
* nodes (TimelineMarkerList / TimelineWorkArea in oaktimeline).
|
||||
@@ -588,6 +591,14 @@ int oaknode_viewer_set_video_params(OakNodeNode *viewer,
|
||||
int oaknode_viewer_set_audio_params(OakNodeNode *viewer,
|
||||
const OakAudioParams *params);
|
||||
|
||||
/**
|
||||
* @brief Find a footage node upstream of this node's inputs
|
||||
* (Node::find_input_nodes<Footage>(), first match). *out is a
|
||||
* borrowed handle or NULL when none.
|
||||
*/
|
||||
int oaknode_node_find_input_footage(const OakNodeNode *node,
|
||||
OakNodeFootage **out);
|
||||
|
||||
/**
|
||||
* @brief Create a command that removes a node from its graph together
|
||||
* with its exclusive dependencies and disconnects its edges
|
||||
|
||||
Reference in New Issue
Block a user