Struct DetectionOptions
pub struct DetectionOptions { pub analysis_speed: SceneDetectionSpeed, pub detect_flashes: bool, pub min_scenecut_distance: Option<usize>, pub max_scenecut_distance: Option<usize>, pub lookahead_distance: usize }
Options determining how to run scene change detection.
Fields
analysis_speed: SceneDetectionSpeedThe speed of detection algorithm to use. Slower algorithms are more accurate/better for use in encoders.
detect_flashes: boolEnabling this will utilize heuristics to avoid scenecuts that are too close to each other. This is generally useful if you want scenecut detection for use in an encoder. If you want a raw list of scene changes, you should disable this.
min_scenecut_distance: Option<usize>The minimum distance between two scene changes.
max_scenecut_distance: Option<usize>The maximum distance between two scene changes.
lookahead_distance: usizeThe distance to look ahead in the video for scene flash detection.
Not used if
detect_flashesisfalse.
Trait Implementations
impl Clone for DetectionOptions
fn clone(&self) -> DetectionOptions
impl Copy for DetectionOptions
impl Debug for DetectionOptions
fn fmt(&self, f: &mut Formatter<'_>) -> Result
impl Default for DetectionOptions
fn default() -> Self
Auto Trait Implementations
impl Freeze for DetectionOptions
impl RefUnwindSafe for DetectionOptions
impl Send for DetectionOptions
impl Sync for DetectionOptions
impl Unpin for DetectionOptions
impl UnsafeUnpin for DetectionOptions
impl UnwindSafe for DetectionOptions
Blanket Implementations
impl<T> Any for DetectionOptions
where
T: 'static + ?Sized,
fn type_id(&self) -> TypeId
impl<T> Borrow<T> for DetectionOptions
where
T: ?Sized,
fn borrow(&self) -> &T
impl<T> BorrowMut<T> for DetectionOptions
where
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
impl<T> CloneToUninit for DetectionOptions
where
T: Clone,
unsafe fn clone_to_uninit(&self, dest: *mut u8)
impl<T> From<T> for DetectionOptions
fn from(t: T) -> TReturns the argument unchanged.
impl<T> IntoEither for DetectionOptions
impl<T> Pointable for DetectionOptions
const ALIGN: usize = _;type Init = T;unsafe fn init(init: <T as Pointable>::Init) -> usizeunsafe fn deref<'a>(ptr: usize) -> &'a Tunsafe fn deref_mut<'a>(ptr: usize) -> &'a mut Tunsafe fn drop(ptr: usize)
impl<T> ToOwned for DetectionOptions
where
T: Clone,
type Owned = T;fn to_owned(&self) -> Tfn clone_into(&self, target: &mut T)
impl<T, U> Into<U> for DetectionOptions
where
U: From<T>,
fn into(self) -> UCalls
U::from(self).That is, this conversion is whatever the implementation of
[From]<T> for Uchooses to do.
impl<T, U> TryFrom<U> for DetectionOptions
where
U: Into<T>,
type Error = Infallible;fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
impl<T, U> TryInto<U> for DetectionOptions
where
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error;fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>