简介
这是一个对 silero_vad (https://github.com/snakers4/silero-vad) 的简易封装,便于开发。
目录简介
环境安装
系统环境
- 在macOS 14.5 版本已验证执行OK。
- mac上安装 onnxruntime(brew 安装未使能 CoreMl, 需下载源码, 手动编译使能, 并安装)
brew install onnxruntime- 下载onnxruntime源码, 手动编译使能, 并安装
brew install cmake protobuf python # 可选 git clone https://github.com/microsoft/onnxruntime cd onnxruntime ./build.sh --config Release --enable_coreml # 或者 ./build.sh --config Release --enable_coreml --build_wheel --parallel sudo ./install_to_system.sh # 如果不安装,库目录build/Release,头文件目录 build/Release/include/
目录简介
```
.
├── README.md
├── bin/
│ ├──main_silero.cpp // 参照 silero_vad中cpp的example封装代码进行测试
│ ├── main.cpp // 参照 translator中FixedVADIterator封装代码进行测试
│ ├── wav.h // 定义读取 wav 文件类
│ └── ...
├── python/
│ ├── processing.py // translator中FixedVADIterator的python脚本
│ └── ...
├── reference/ // python、cpp参考代码
├── silero_vad_onnx/ // 参照 silero_vad中cpp的封装
│ ├── time_stamp.cpp
│ ├── time_stamp.h
│ ├── vad_iterator.cpp
│ ├── vad_iterator.h
│ └── ...
├── vad_onnx/ // 参照 translator中FixedVADIterator封装
│ ├── vad_onnx.cpp
│ ├── vad_onnx.h
│ └── ...
└── ...
```
编译
```bash
git clone https://huggingface.co/MoYoYoTech/vad_cpp
cd vad_cpp
mkdir build
cd build
cmake .. -DONNXRUNTIME_DIR=/opt/homebrew/Cellar/onnxruntime/1.21.1 # 或者指定源码编译后的路径,包括 include 和 lib目录
make
```
运行&使用
接口调用和使用参考 main_silero.cpp 和 main.cpp
```bash
cd bin
# silero_vad_onnx.dylib 测试程序
./main_silero "/Users/.../Translator/moyoyo_asr_models/silero-vad/silero_vad.onnx" "/Users/xxx/zh.wav"
# vad_onnx.dylib 测试程序
./main "/Users/.../Translator/moyoyo_asr_models/silero-vad/silero_vad.onnx" "/Users/xxx/zh.wav"
```
translator中FixedVADIterator的python测试脚本
```bash
cd vad_cpp
# python/processing.py中配置 wav_path ; 在python/helpers/vadprocessor.py中配置 VAD_MODEL_PATH
python -m python.processing
# 结果显示
....
935936 ->>> {'start': 935456} -> {'start': 5664}
984576 ->>> {'end': 983008} -> {'start': 5664, 'end': 983008}
strat: 5664 end: 983008
```
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support