#![cfg_attr(not(test), deny(clippy::unwrap_used))]
#![cfg_attr(not(test), deny(clippy::expect_used))]
#![cfg_attr(not(test), deny(clippy::panic))]
#![deny(unsafe_op_in_unsafe_fn)]
pub mod cluster;
pub mod embedding;
#[cfg(feature = "ffi")]
pub mod ffi;
pub mod features;
pub use features::{compute_fbank, FbankConfig, FbankExtractor};
pub mod offline;
pub mod online;
pub mod overlap;
pub mod types;
pub mod utils;
pub mod vad;
#[cfg(feature = "onnx")]
pub mod onnx;
#[cfg(feature = "onnx")]
pub mod ecapa;
pub use cluster::SpeakerCluster;
pub use embedding::{DummyExtractor, EmbeddingExtractor, EmbeddingError};
pub use offline::OfflineDiarizer;
pub use online::OnlineDiarizer;
pub use overlap::detect_overlaps;
pub use types::{
Confidence, DiarizationConfig, DiarizationResult, EmbeddingDim, SampleRate, Seconds,
Segment, SpeakerId, SpeakerTurn, TimeRange, WordAlignment,
};
pub use vad::{segment_speech, EnergyVad, VadConfig, VoiceActivityDetector, VadError};
#[cfg(feature = "onnx")]
pub use onnx::OnnxEmbeddingExtractor;
#[cfg(feature = "onnx")]
pub use ecapa::EcapaTdnnExtractor;