rwhisper 0.4.1

A simple interface for Whisper transcription models in Rust
Documentation

rwhisper

A Rust wrapper for whisper

Usage

use futures_util::StreamExt;
use kalosm::sound::*;
use tokio::time::{Duration, Instant};

#[tokio::main]
async fn main() -> Result<(), anyhow::Error> {
    // Create a new small whisper model.
    let model = WhisperBuilder::default()
        .with_source(WhisperSource::SmallEn)
        .build()
        .await?;

    // Record audio from the microphone for 5 seconds.
    let audio = MicInput::default()
        .record_until(Instant::now() + Duration::from_secs(5))
        .await;

    // Transcribe the audio.
    let mut text = model.transcribe(audio);

    // As the model transcribes the audio, print the text to the console.
    text.to_std_out().await.unwrap();

    Ok(())
}