pub struct AudioSync { /* private fields */ }Expand description
Audio-based synchronization using cross-correlation
Implementations§
Source§impl AudioSync
impl AudioSync
Sourcepub fn new(config: SyncConfig) -> Self
pub fn new(config: SyncConfig) -> Self
Create a new audio synchronizer
Sourcepub fn find_offset(
&self,
signal1: &[f32],
signal2: &[f32],
) -> AlignResult<TimeOffset>
pub fn find_offset( &self, signal1: &[f32], signal2: &[f32], ) -> AlignResult<TimeOffset>
Find time offset between two audio signals
§Errors
Returns error if signals are too short or correlation fails
Sourcepub fn refine_offset(
&self,
signal1: &[f32],
signal2: &[f32],
coarse_offset: i64,
) -> AlignResult<f64>
pub fn refine_offset( &self, signal1: &[f32], signal2: &[f32], coarse_offset: i64, ) -> AlignResult<f64>
Refine offset to sub-sample precision using parabolic interpolation
§Errors
Returns error if refinement fails
Auto Trait Implementations§
impl Freeze for AudioSync
impl RefUnwindSafe for AudioSync
impl Send for AudioSync
impl Sync for AudioSync
impl Unpin for AudioSync
impl UnsafeUnpin for AudioSync
impl UnwindSafe for AudioSync
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
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.