pub struct SearchConfig {
pub range: SearchRange,
pub precision: MvPrecision,
pub early_termination: bool,
pub early_threshold: u32,
pub mv_cost: MvCost,
pub max_iterations: u32,
pub subpel_refine: bool,
}Expand description
Configuration for motion search algorithms.
Fields§
§range: SearchRangeSearch range in full pixels.
precision: MvPrecisionMotion vector precision.
early_termination: boolEnable early termination.
early_threshold: u32Early termination threshold.
mv_cost: MvCostMV cost calculator for RD optimization.
max_iterations: u32Maximum iterations for iterative algorithms.
subpel_refine: boolEnable sub-pixel refinement.
Implementations§
Source§impl SearchConfig
impl SearchConfig
Sourcepub fn with_range(range: SearchRange) -> Self
pub fn with_range(range: SearchRange) -> Self
Creates a new search config with the given range.
Sourcepub const fn range(self, range: SearchRange) -> Self
pub const fn range(self, range: SearchRange) -> Self
Sets the search range.
Sourcepub const fn precision(self, precision: MvPrecision) -> Self
pub const fn precision(self, precision: MvPrecision) -> Self
Sets motion vector precision.
Sourcepub const fn early_termination(self, enable: bool) -> Self
pub const fn early_termination(self, enable: bool) -> Self
Enables or disables early termination.
Sourcepub fn ref_mv(self, mv: MotionVector) -> Self
pub fn ref_mv(self, mv: MotionVector) -> Self
Sets the reference motion vector for cost calculation.
Trait Implementations§
Source§impl Clone for SearchConfig
impl Clone for SearchConfig
Source§fn clone(&self) -> SearchConfig
fn clone(&self) -> SearchConfig
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for SearchConfig
impl Debug for SearchConfig
Auto Trait Implementations§
impl Freeze for SearchConfig
impl RefUnwindSafe for SearchConfig
impl Send for SearchConfig
impl Sync for SearchConfig
impl Unpin for SearchConfig
impl UnsafeUnpin for SearchConfig
impl UnwindSafe for SearchConfig
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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