pub struct WhisperContext { /* private fields */ }Implementations§
Source§impl WhisperContext
impl WhisperContext
pub fn new<P: AsRef<Path>>(model_path: P) -> Result<Self>
pub fn new_from_buffer(buffer: &[u8]) -> Result<Self>
pub fn is_multilingual(&self) -> bool
pub fn n_vocab(&self) -> i32
pub fn n_audio_ctx(&self) -> i32
pub fn n_text_ctx(&self) -> i32
pub fn n_len(&self) -> i32
Source§impl WhisperContext
impl WhisperContext
Sourcepub async fn transcribe_async(&self, audio: Vec<f32>) -> Result<String>
pub async fn transcribe_async(&self, audio: Vec<f32>) -> Result<String>
Transcribe audio asynchronously using default parameters
Sourcepub async fn transcribe_with_params_async(
&self,
audio: Vec<f32>,
params: TranscriptionParams,
) -> Result<TranscriptionResult>
pub async fn transcribe_with_params_async( &self, audio: Vec<f32>, params: TranscriptionParams, ) -> Result<TranscriptionResult>
Transcribe audio asynchronously with custom parameters
Sourcepub async fn create_state_async(&self) -> Result<WhisperState>
pub async fn create_state_async(&self) -> Result<WhisperState>
Create an async state for manual control
Source§impl WhisperContext
impl WhisperContext
Sourcepub fn transcribe(&self, audio: &[f32]) -> Result<String>
pub fn transcribe(&self, audio: &[f32]) -> Result<String>
Sourcepub fn transcribe_with_params(
&self,
audio: &[f32],
params: TranscriptionParams,
) -> Result<TranscriptionResult>
pub fn transcribe_with_params( &self, audio: &[f32], params: TranscriptionParams, ) -> Result<TranscriptionResult>
Sourcepub fn transcribe_with_full_params(
&self,
audio: &[f32],
params: FullParams,
) -> Result<TranscriptionResult>
pub fn transcribe_with_full_params( &self, audio: &[f32], params: FullParams, ) -> Result<TranscriptionResult>
Sourcepub fn create_state(&self) -> Result<WhisperState>
pub fn create_state(&self) -> Result<WhisperState>
Create a new state for manual transcription control
This allows you to reuse a state for multiple transcriptions, which can be more efficient than creating a new state each time.
Sourcepub fn transcribe_with_params_enhanced(
&self,
audio: &[f32],
params: TranscriptionParams,
) -> Result<TranscriptionResult>
pub fn transcribe_with_params_enhanced( &self, audio: &[f32], params: TranscriptionParams, ) -> Result<TranscriptionResult>
Enhanced transcription with custom parameters and temperature fallback
This method provides quality-based retry with multiple temperatures if the initial transcription doesn’t meet quality thresholds.
§Arguments
audio- Audio samples (must be 16kHz mono f32)params- Custom transcription parameters
§Returns
A TranscriptionResult containing the full text and individual segments
§Example
let ctx = WhisperContext::new("model.bin")?;
let params = TranscriptionParams::builder()
.language("en")
.build();
let audio = vec![0.0f32; 16000];
let result = ctx.transcribe_with_params_enhanced(&audio, params)?;Sourcepub fn transcribe_with_full_params_enhanced(
&self,
audio: &[f32],
params: FullParams,
) -> Result<TranscriptionResult>
pub fn transcribe_with_full_params_enhanced( &self, audio: &[f32], params: FullParams, ) -> Result<TranscriptionResult>
Enhanced transcription with full parameters and temperature fallback
This method provides quality-based retry with multiple temperatures if the initial transcription doesn’t meet quality thresholds.
§Arguments
audio- Audio samples (must be 16kHz mono f32)params- Full parameter configuration
§Returns
A TranscriptionResult containing the full text and individual segments