#[derive(Debug, Clone)]
pub struct AudioChunk {
pub timestamp: std::time::SystemTime,
pub data: Vec<f32>,
pub is_speech: Option<bool>,
}
#[derive(Debug, Clone)]
pub struct AudioRequest(pub AudioChunk);
#[derive(Debug, Clone)]
pub struct WavAudioRequest {
pub wav_data: Vec<u8>,
pub timestamp: std::time::SystemTime,
}
#[derive(Debug, Clone)]
pub struct AudioResponse {
pub result_data: ProcessedData,
pub original_timestamp: std::time::SystemTime,
}
#[derive(Debug, Clone)]
pub enum ProcessedData {
Transcription(String),
}
#[derive(Debug, thiserror::Error)]
pub enum PipelineError {
#[error("WAV conversion failed: {0}")]
WavConversionError(String),
#[error("Transcription failed: {0}")]
TranscriptionError(String),
#[error("Unknown error: {0}")]
UnknownError(String),
}