6个版本 (稳定版)
1.0.3 | 2024年1月5日 |
---|---|
1.0.2 | 2024年1月4日 |
0.1.0 | 2024年1月4日 |
0.0.0 | 2024年1月5日 |
在音频类别中排名第273
2.5MB
256 行
SimpleTranscribe-rs 🔈 📖
一个使用Rust编写的音频到文本转录库,利用了Whisper-rs绑定。
什么是SimpleTranscribe-rs?
SimpleTranscribe-rs是一个用Rust编写的库,旨在让开发人员将音频到文本转录变得简单。SimpleTranscribe-rs处理音频到文本转录的各个方面,如自动下载所需的whisper文本到语音模型。目标是让开发人员能够快速将转录集成到他们的项目中 🌩️
特性
-
自动下载尚未安装的模型。支持的模型
- 小型
- 基础
- 小型
- 中型
- 大型
-
支持从不同文件类型的音频中转录,如
- mp3
- wav
入门指南
要使用SimpleTranscribe-rs,只需将其添加到项目的cargo.toml
[dependencies]
simple_transcribe_rs = "1.0.1"
tokio = { version = "1.35.1", features = ["full"] }
由于下载模型的本性,需要等待模型处理器的实例化。因此需要一个异步运行时。库内部使用的是Tokio,并且也进行了测试,因此是此库的推荐运行时。
使用方法
要使用SimpleTranscribe-rs,首先需要使用模型处理器来设置和准备语言模型。之后,可以使用转录器将音频文件转换为文本。以下是一个示例片段
use simple_transcribe_rs::model_handler;
use simple_transcribe_rs::transcriber;
#[tokio::main]
async fn main() {
let m = model_handler::ModelHandler::new("tiny", "models/").await;
let trans = transcriber::Transcriber::new(m);
let result = trans.transcribe("src/test_data/test.mp3", None).unwrap();
let text = result.get_text();
let start = result.get_start_timestamp();
let end = result.get_end_timestamp();
println!("start[{}]-end[{}] {}", start, end, text);
}
可以通过以下方式运行该片段:cargo run --example usage_example
依赖项
~12–26MB
~471K SLoC