pub trait AudioEncoder: Send + Sync {
// Required methods
fn encode(&self, audio: &AudioData) -> Result<Vector>;
fn encode_batch(&self, audios: &[AudioData]) -> Result<Vec<Vector>>;
fn get_embedding_dim(&self) -> usize;
fn extract_features(&self, audio: &AudioData) -> Result<Vec<f32>>;
}Expand description
Audio encoder trait for cross-modal systems
Required Methods§
fn encode(&self, audio: &AudioData) -> Result<Vector>
fn encode_batch(&self, audios: &[AudioData]) -> Result<Vec<Vector>>
fn get_embedding_dim(&self) -> usize
fn extract_features(&self, audio: &AudioData) -> Result<Vec<f32>>
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".