README_usage.md 2.0 KB

VAD + SenseVoice C API 使用说明

功能

这个程序实现了以下功能:

  1. 使用VAD(语音活动检测)分割音频
  2. 使用SenseVoice模型进行语音识别
  3. 将转录结果保存到txt文件
  4. 计算程序执行时的CPU消耗

所需文件

运行前需要下载以下文件:

1. 音频文件

wget https://github.com/k2-fsa/sherpa-onnx/releases/download/asr-models/lei-jun-test.wav

2. VAD模型(二选一)

选项1:Silero VAD

wget https://github.com/k2-fsa/sherpa-onnx/releases/download/asr-models/silero_vad.onnx

选项2:Ten VAD

wget https://github.com/k2-fsa/sherpa-onnx/releases/download/asr-models/ten-vad.onnx

3. SenseVoice模型

wget https://github.com/k2-fsa/sherpa-onnx/releases/download/asr-models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17.tar.bz2
tar xvf sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17.tar.bz2
rm sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17.tar.bz2

编译方法

Windows系统

  1. 确保已安装GCC(如MinGW)或MSVC
  2. 双击运行 build_windows.bat
  3. 或使用命令行: bash build_windows.bat

Linux/macOS系统

make vad-sense-voice-c-api

运行程序

./vad-sense-voice-c-api.exe  # Windows
./vad-sense-voice-c-api      # Linux/macOS

输出文件

程序运行后会生成:

  • transcription_result.txt:包含所有转录结果和性能统计

文件内容示例

音频转录结果:
================
片段 1 (0.000-2.500秒): 大家好,我是雷军
片段 2 (3.000-5.200秒): 今天很高兴见到大家

性能统计:
================
总执行时间: 1.234 秒
CPU时间: 0.987 秒
CPU使用率: 80.0%
转录片段数: 2

故障排除

编译错误

  • Windows: 确保已安装MinGW或Visual Studio
  • Linux: 确保已安装build-essential
  • macOS: 确保已安装Xcode命令行工具

运行时错误

  • 检查所有必需文件是否存在
  • 确保模型文件路径正确
  • 检查音频文件格式(需要16kHz采样率)