pub struct ClusterConfig {
pub threshold: f32,
pub max_speakers: usize,
pub min_cluster_size: usize,
pub min_cluster_secs: f64,
}Expand description
Configuration for speaker clustering.
Fields§
§threshold: f32Cosine similarity threshold: clusters whose centroids are at least this similar are merged by the agglomerative clusterer. Higher = stricter = more (smaller) clusters.
max_speakers: usizeMaximum number of speakers to track.
min_cluster_size: usizeMinimum members a cluster must have to survive. After clustering, any
cluster smaller than this is dissolved and its frames reassigned to the
nearest large speaker centroid. This prunes spurious tiny clusters that
inflate the speaker count without hurting frame-DER. 1 disables pruning.
Ignored when min_cluster_secs > 0 (duration pruning takes precedence).
min_cluster_secs: f64Minimum total speech duration (seconds) a cluster must have to survive —
the length-invariant alternative to min_cluster_size. When > 0, a
cluster whose overlap-merged window duration is below this is dissolved.
0.0 disables it (the member-count rule applies instead).
Trait Implementations§
Source§impl Clone for ClusterConfig
impl Clone for ClusterConfig
impl Copy for ClusterConfig
Source§impl Debug for ClusterConfig
impl Debug for ClusterConfig
Auto Trait Implementations§
impl Freeze for ClusterConfig
impl RefUnwindSafe for ClusterConfig
impl Send for ClusterConfig
impl Sync for ClusterConfig
impl Unpin for ClusterConfig
impl UnsafeUnpin for ClusterConfig
impl UnwindSafe for ClusterConfig
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T, U> Imply<T> for U
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
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> ⓘ
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> ⓘ
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