The ten edit operations, as an editor's tools spell them.
Symbols in this group are spelled otio_edit_…. An SDK drops that prefix, which is why the name beside each call is the short one.
Drops an item into a gap on a track, fitting it as the reference point says.
OtioStatus otio_edit_fill(
OtioDocument *target,
OtioNode item,
OtioNode track,
OtioRationalTime track_time,
OtioReferencePoint reference_point,
OtioBuffer *out_error);| Parameter | Type | Role |
|---|---|---|
| target | document | the document, changed |
| item | node | input |
| track | node | input |
| track_time | OtioRationalTime | input |
| reference_point | OtioReferencePoint | input |
| out_error | text | why the call failed, or null to skip it |
Inserts an item at an instant, pushing what follows later.
OtioStatus otio_edit_insert(
OtioDocument *target,
OtioNode item,
OtioNode composition,
OtioRationalTime time,
bool remove_transitions,
OtioNode fill_template,
OtioBuffer *out_error);| Parameter | Type | Role |
|---|---|---|
| target | document | the document, changed |
| item | node | input |
| composition | node | input |
| time | OtioRationalTime | input |
| remove_transitions | bool | input |
| fill_template ? | node | input |
| out_error | text | why the call failed, or null to skip it |
Lays an item over a span of a composition, replacing what was there.
`fill_template` is the item to fill any gap the edit opens with, or `otio_node_none` for a plain gap.
OtioStatus otio_edit_overwrite(
OtioDocument *target,
OtioNode item,
OtioNode composition,
OtioTimeRange range,
bool remove_transitions,
OtioNode fill_template,
OtioBuffer *out_error);| Parameter | Type | Role |
|---|---|---|
| target | document | the document, changed |
| item | node | input |
| composition | node | input |
| range | OtioTimeRange | input |
| remove_transitions | bool | input |
| fill_template ? | node | input |
| out_error | text | why the call failed, or null to skip it |
Takes whatever sits at an instant out of a composition.
With `fill` set, a gap takes its place; without, what follows moves up.
OtioStatus otio_edit_remove(
OtioDocument *target,
OtioNode composition,
OtioRationalTime time,
bool fill,
OtioNode fill_template,
OtioBuffer *out_error);| Parameter | Type | Role |
|---|---|---|
| target | document | the document, changed |
| composition | node | input |
| time | OtioRationalTime | input |
| fill | bool | input |
| fill_template ? | node | input |
| out_error | text | why the call failed, or null to skip it |
Moves an item's in and out points, sliding everything after it.
OtioStatus otio_edit_ripple(
OtioDocument *target,
OtioNode item,
OtioRationalTime delta_in,
OtioRationalTime delta_out,
OtioBuffer *out_error);| Parameter | Type | Role |
|---|---|---|
| target | document | the document, changed |
| item | node | input |
| delta_in | OtioRationalTime | input |
| delta_out | OtioRationalTime | input |
| out_error | text | why the call failed, or null to skip it |
Moves the cut between an item and its neighbour.
OtioStatus otio_edit_roll(
OtioDocument *target,
OtioNode item,
OtioRationalTime delta_in,
OtioRationalTime delta_out,
OtioBuffer *out_error);| Parameter | Type | Role |
|---|---|---|
| target | document | the document, changed |
| item | node | input |
| delta_in | OtioRationalTime | input |
| delta_out | OtioRationalTime | input |
| out_error | text | why the call failed, or null to skip it |
Cuts whatever sits at an instant into two.
OtioStatus otio_edit_slice(
OtioDocument *target,
OtioNode composition,
OtioRationalTime time,
bool remove_transitions,
OtioBuffer *out_error);| Parameter | Type | Role |
|---|---|---|
| target | document | the document, changed |
| composition | node | input |
| time | OtioRationalTime | input |
| remove_transitions | bool | input |
| out_error | text | why the call failed, or null to skip it |
Moves an item along its track, taking the time from its neighbours.
OtioStatus otio_edit_slide(
OtioDocument *target,
OtioNode item,
OtioRationalTime delta,
OtioBuffer *out_error);| Parameter | Type | Role |
|---|---|---|
| target | document | the document, changed |
| item | node | input |
| delta | OtioRationalTime | input |
| out_error | text | why the call failed, or null to skip it |
Moves the media inside an item without moving the item.
OtioStatus otio_edit_slip(
OtioDocument *target,
OtioNode item,
OtioRationalTime delta,
OtioBuffer *out_error);| Parameter | Type | Role |
|---|---|---|
| target | document | the document, changed |
| item | node | input |
| delta | OtioRationalTime | input |
| out_error | text | why the call failed, or null to skip it |
Moves an item's in and out points without moving its neighbours.
OtioStatus otio_edit_trim(
OtioDocument *target,
OtioNode item,
OtioRationalTime delta_in,
OtioRationalTime delta_out,
OtioNode fill_template,
OtioBuffer *out_error);| Parameter | Type | Role |
|---|---|---|
| target | document | the document, changed |
| item | node | input |
| delta_in | OtioRationalTime | input |
| delta_out | OtioRationalTime | input |
| fill_template ? | node | input |
| out_error | text | why the call failed, or null to skip it |