pub struct MultiCamEditor {
pub session: MultiCamSession,
pub cuts: Vec<MultiCamCut>,
}Expand description
High-level multi-camera editing controller.
Manages a MultiCamSession together with a sorted list of
MultiCamCuts and provides timeline generation.
Fields§
§session: MultiCamSessionThe underlying session (cameras + sync offsets).
cuts: Vec<MultiCamCut>Sorted list of cuts.
Implementations§
Source§impl MultiCamEditor
impl MultiCamEditor
Sourcepub fn new(session: MultiCamSession) -> Self
pub fn new(session: MultiCamSession) -> Self
Create a new editor wrapping the given session.
Sourcepub fn add_cut(&mut self, cut: MultiCamCut) -> EditResult<()>
pub fn add_cut(&mut self, cut: MultiCamCut) -> EditResult<()>
Add a cut, keeping the cut list sorted by timestamp_ms.
§Errors
Returns EditError::InvalidEdit if either from_camera or to_camera
is not a valid camera index in the underlying session.
Sourcepub fn remove_cut_at(&mut self, timestamp_ms: u64) -> Option<MultiCamCut>
pub fn remove_cut_at(&mut self, timestamp_ms: u64) -> Option<MultiCamCut>
Remove the first cut whose timestamp_ms equals timestamp_ms.
Sourcepub fn generate_timeline(&self) -> Vec<ClipRef>
pub fn generate_timeline(&self) -> Vec<ClipRef>
Trait Implementations§
Auto Trait Implementations§
impl Freeze for MultiCamEditor
impl RefUnwindSafe for MultiCamEditor
impl Send for MultiCamEditor
impl Sync for MultiCamEditor
impl Unpin for MultiCamEditor
impl UnsafeUnpin for MultiCamEditor
impl UnwindSafe for MultiCamEditor
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more