Moonshine 命令行语音识别测试指南4 步跑通本地离线转写【免费下载链接】moonshineVery low latency speech to text, intent recognition, and text to speech, for building voice agents and interfaces项目地址: https://gitcode.com/GitHub_Trending/moonshine3/moonshine想用 Moonshine 做本地语音识别又不想先学一套框架Moonshine 是 Moonshine AI 开源的低延迟语音转写ASR库整条链路可以在命令行里跑完不经过云端、不上传音频模型和录音都在本机。这份指南带你从克隆仓库走到第一条转写命令出结果中间只依赖命令行。读完后你能做到在本机用 Moonshine 命令行示例完成一次完整的离线语音识别看懂-m、-a、-w、-t四个参数按需换模型和音频在 Windows 上用麦克风做实时转写并知道如何停止按排错表处理模型加载、音频格式这两类高频问题动手清单代码、库和模型一次备齐克隆仓库只需一次git clone https://gitcode.com/GitHub_Trending/moonshine3/moonshine cd moonshine准备预编译库、模型和示例音频examples/c/download-library.sh会按你的平台自动下载 Moonshine 预编译库到moonshine-voice/同时把英文流式模型放进medium-streaming-en/、示例录音two_cities.wav放到脚本目录旁边。在examples/c下执行cd examples/c ./download-library.sh确认三样东西就位moonshine-voice/库和头文件、medium-streaming-en/模型、two_cities.wav音频仓库test-assets/下另有beckett.wav等可选素材。跑通第一条转录命令首次编译运行只做一件事链接刚下好的库生成可执行文件transcriber。下面是 Linux 下的完整命令-Wl,-rpath让程序运行时无需再设置LD_LIBRARY_PATH就能找到库g transcriber.cpp \ -Imoonshine-voice/include \ -Lmoonshine-voice/lib \ -lmoonshine \ -Wl,-rpath,$ORIGIN/moonshine-voice/lib \ -o transcribermacOS 的编译命令在 examples/c/README.md 里有对应版本只需额外链接系统框架。直接运行不带任何参数./transcriber预期输出是一行行滚动的转写事件Line started:、Line text changed:会随音频推进不断更新同一句话Line completed:出现时这句话定稿。示例默认读取medium-streaming-en模型和two_cities.wav狄更斯《双城记》的有声节选所以你会看到 It was the best of times... 这类文本逐步打出来。参数速查模型、架构与转写间隔流式模型边接收音频边出文字不必等整个文件读完-a指定架构、-m指定模型目录两者必须配套。参数含义默认值何时修改-m, --model-path模型目录内含encoder_model.ort、decoder_model_merged.ort、tokenizer.binmedium-streaming-en换了模型例如更小的tiny-streaming-en-a, --model-arch架构编号0TINY、1BASE、2TINY_STREAMING、3BASE_STREAMING、4SMALL_STREAMING、5MEDIUM_STREAMING5与-m保持对应跑小模型时改2省内存-w, --wav-path要转写的 16 位 PCM WAV 文件two_cities.wav测试自己的录音时必改-t, --transcription-interval每隔多少秒触发一次转写更新秒0.481只出现在通用 C 示例里机器慢、CPU 吃紧时调大注意-a仅出现在 examples/c/transcriber.cpp 里Windows 工具多了-h帮助项没有-t。各语言可选模型的参数量与错误率见 docs/models/available-models.md支持的语种见下图Windows 麦克风模式实时转写命令行工具不止能转文件examples/windows/cli-transcriber直接接麦克风把麦克风里的声音实时变成文字。用 Visual Studio 打开examples/windows/cli-transcriber/cli-transcriber.vcxproj配置 Release x64 生成。它默认走models/medium-streaming-en所以先保证模型下载到了对应目录或自己指定路径。cli-transcriber.exe -m ..\..\..\medium-streaming-en -a 5启动后终端提示 Listening to microphone说话即可看到文字逐字刷新。按 CtrlC 停止进程退出并自动释放音频设备。排错速查模型加载失败与音频格式现象原因处理模型加载失败提示找不到文件模型目录里缺少encoder_model.ort、decoder_model_merged.ort、tokenizer.bin任一文件重新执行./download-library.sh或对照 docs/using/downloading-models.md 核对目录内容报错与架构不匹配-a编号和模型不是同一架构比如给tiny-streaming-en传了5按参数表把-a改成与模型目录对应的编号提示 Only 16-bit PCM WAV files are supported录音不是 16 位 PCM 格式比如浮点 WAV 或压缩格式用ffmpeg -i in.wav -ac 1 -ar 16000 -acodec pcm_s16le out.wav转成 16 位单声道英文识别效果不理想小模型词错误率偏高或间隔太短换更大的流式模型或把-t调到 0.8 以上下一步想要更小或更准的模型按 docs/models/available-models.md 选择语言与架构把模型目录放到本机后用-m指定docs/models/huggingface.md 里有各模型的获取地址。换自己的音频把本地 16 位 PCM WAV 传给-w。除了two_cities.wavtest-assets/ 下还有beckett.wav、intent.wav、endgame_nagg_nell.wav等可直接拿来做对照。写进自己的程序命令行示例背后就是 examples/c/transcriber.cpp 里的moonshine::Transcriber类把addAudio()换成你的音频来源即可接口说明见 docs/api/classes.md。【免费下载链接】moonshineVery low latency speech to text, intent recognition, and text to speech, for building voice agents and interfaces项目地址: https://gitcode.com/GitHub_Trending/moonshine3/moonshine创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
