rusty-whisper

Crates.iorusty-whisper
lib.rsrusty-whisper
version0.1.3
sourcesrc
created_at2023-11-24 18:17:43.076677
updated_at2023-12-05 18:26:40.467275
descriptionRust implementation of Whisper
homepage
repositoryhttps://github.com/igor-yusupov/rusty-whisper/
max_upload_size
id1047263
size58,871
(igor-yusupov)

documentation

README

rusty-whisper

Rust implementation of Whisper. More information about model: https://github.com/openai/whisper

This crate is based on tract.

Quick start

Download weights and example audio file and run simple inference code:

use rusty_whisper::Whisper;

fn main() {
    let whisper = Whisper::new(
        "weights/encoder.onnx",
        "weights/decoder.onnx",
        "weights/multilingual.tiktoken",
        "weights/positional_embedding.npz",
        "weights/mel_filters.npz",
    );
    let result = whisper.recognize_from_audio("data/audio.wav");
    println!("{}", result);
}

The model works only with 16-bit WAV files, so make sure to convert your input before running the tool. For example, you can use ffmpeg like this:

ffmpeg -i input.mp3 -ar 16000 -ac 1 -c:a pcm_s16le output.wav
Commit count: 10

cargo fmt