18个版本
新版本 0.2.7 | 2024年8月18日 |
---|---|
0.2.6 | 2024年8月12日 |
0.1.9 | 2024年8月7日 |
#154 in 音频
1,339 每月下载量
用于 sherpa-rs
15KB
211 行
pyannote-rs
Pyannote在Rust中的音频说话人分割
特性
- 在CPU上,1小时音频的计算时间少于1分钟。
- 在Windows上的DirectML和macOS上的CoreML上,性能更快。
- Pyannote分割的准确时间戳。
- 使用wespeaker嵌入识别说话人。
安装
cargo add pyannote-rs
使用方法
见 构建
示例
见 示例
工作原理
pyannote-rs使用2个模型进行说话人分割
- 分割: segmentation-3.0 识别何时有语音发生。
- 说话人识别: wespeaker-voxceleb-resnet34-LM 识别是谁在说话。
推理由 onnxruntime 提供支持。
- 分割模型通过滑动窗口方法(分块迭代)处理多达10秒的音频。
- 嵌入模型处理使用 knf-rs 提取的滤波器组(音频特征)。
说话人比较(例如,确定Alice是否再次说话)使用余弦相似度完成。
致谢
向 pyannote-onnx 和 kaldi-native-fbank 表示衷心的感谢。
依赖项
~3–11MB
~117K SLoC