声云录音卡离线语音转文字教程:SenseVoiceSmall本地识别中文、英文、粤语,告别云服务依赖
【免费下载链接】sonicloud_opensdk声云录音卡 Recorder 是一套面向开发者和行业客户的智能录音硬件接入方案。 项目以录音卡片硬件为核心,开放 BLE 协议 SDK 及 Android、iOS、鸿蒙、Flutter 接入示例,同时提供 Windows/macOS 桌面端 Demo,支持设备连接、录音控制、实时音频、文件传输、OTA 升级和语音转写等能力,帮助开发者快速将录音硬件接入自己的 App、桌面软件或行业系统。 如需获取硬件规格、样机、完整协议、SDK 资料或定制服务,请联系安徽声云项目地址: https://gitcode.com/gh_mirrors/recorder24/sonicloud_opensdk
声云录音卡 Recorder 是一套开源的智能录音硬件接入方案,其 Windows/macOS 桌面 Demo 集成了 FunASR SenseVoiceSmall 模型,可在本地完成离线语音转文字:识别中文、英文、粤语等语言,结果直接保存为同名 txt 文件。全程不需要上传录音到任何云端,首次下载模型后即可断网使用,适合会议、采访、课堂等对隐私敏感的场景。
为什么选择离线语音转文字
把录音发给云端识别服务,意味着音频要离开本机。而声云录音卡桌面 Demo 的离线转写方案有三大好处:
- 🔒数据不出门:录音文件与文本全程在本地生成,无需担心内容外泄;
- 📴不依赖网络:模型缓存完成后,飞行模式也能转写;
- 💰无按量费用:SenseVoiceSmall 是轻量级模型,CPU 即可运行,转写多少条都不花钱。
硬件与 Python 环境准备
你需要的硬件就是一张声云录音卡(广播名 CB08,BLE 连接):
环境要求很简单:
| 项目 | 要求 |
|---|---|
| 操作系统 | Windows / macOS / Linux |
| Python | 3.10 及以上 |
| 硬件 | 可用 BLE 适配器 + 一张录音卡 |
进入 Demo 目录后安装转写依赖(核心功能只需requirements.txt,转文字是可选能力):
pip install -r requirements-asr.txt⚠️ 一个常见坑:torchaudio 的大版本必须与已安装的 torch 一致(例如 torch 2.9.x 配 torchaudio 2.9.x),否则在 Windows 上导入时会报WinError 127。依赖清单见 requirements-asr.txt。
模型下载:一次 900MB,之后完全离线
首次执行转写命令时,程序会从 ModelScope 自动下载 SenseVoiceSmall 模型(约 900MB),缓存于~/.cache/modelscope目录。下载一次之后,此后运行完全离线,识别过程不会访问任何网络服务。
模型的核心特性在 recorder/asr.py 中配置:
- 识别在
device="cpu"下运行,无需 GPU; - 内置 fsmn-vad 语音活动检测,自动把长音频切成最长 30 秒的片段再识别,任意时长的录音都能处理;
- 开启 ITN(数字/标点正规化),识别出的"二零二六年"会规范为"2026年";
- 录音卡下载的 WAV 为 16000Hz / 16bit / 单声道,正是 SenseVoice 的标准输入,无需重采样。
三步快速上手:录音变文字
第 1 步:连接录音卡
启动命令行 REPL(入口 main.py):
python main.py然后扫描并连接设备:
record> scan # 扫描附近的录音卡 record> connect 0 # 连接扫描结果中的第 0 台设备 record> list # 查看设备里的录音文件第 2 步:下载录音文件
record> download 0 # 下载第 0 个文件,自动保存为 WAV 并校验第 3 步:一键转文字
record> transcribe 0如果文件尚未下载,命令会自动先下载再转写。转写完成后,文本保存在音频文件同名的.txt中,内容同时在控制台输出。也可以直接转写本地已有的音频文件:
record> transcribe "downloads/录音001.wav"整个过程对应实现见 recorder/cli.py 中的cmd_transcribe。
语言参数用法:中文、英文、粤语一键识别
transcribe第二个参数指定语言,支持以下 6 种取值:
| 参数 | 语言 |
|---|---|
auto | 自动检测(默认) |
zh | 中文 |
en | 英语 |
yue | 粤语 |
ja | 日语 |
ko | 韩语 |
混合语言会议建议用auto让模型自行判断;已知语种时显式指定更稳:
record> transcribe 0 zh # 指定中文识别 record> transcribe 0 en # 指定英文识别 record> transcribe 0 yue # 指定粤语识别 record> transcribe all # 批量转写设备上全部文件无代码玩法:浏览器 Web 控制台转写
不想敲命令?加一个参数就能用浏览器操作:
pip install -r requirements-web.txt # 可选依赖 python main.py --web # 默认 http://127.0.0.1:8000声云录音卡BLE控制台:在浏览器中一键离线语音转文字的界面
Web 控制台里可以扫描连接、查看文件列表、在线试听 WAV,并在文件列表上方选择转写语言下拉框(auto/zh/en/yue/ja/ko)后,点每个文件旁的「转写」按钮,结果实时显示在转写输出区并保存为同名 txt(后端接口见 recorder/web.py)。
常见问题
- 扫不到录音卡:确认设备没有被手机 App 占用;找不到时试
scan compat列出全部有名称的设备再手动选择。 - 转写提示"未安装 funasr":执行
pip install -r requirements-asr.txt安装可选依赖即可。 - torchaudio 报 WinError 127:torch 与 torchaudio 版本没配对,安装与 torch 同号的 torchaudio(如
pip install torchaudio==2.9.1)。 - 首次模型下载很慢或中断:等待网络恢复后重新执行
transcribe,下载完成后缓存于本机,不再重复下载。 - 识别结果为空:确认音频内确实有人声;环境噪音过大的片段可能识别不到有效语音。
相关资源与文件
- 桌面 Demo 完整说明:pnote-web-win&Mac-demo/README.md
- 离线转写核心实现:recorder/asr.py
- 命令行 REPL:recorder/cli.py
- Web 控制台后端:recorder/web.py
- 转写依赖清单:requirements-asr.txt
- CB08 通讯协议文档:docs/协议.md
- 移动端(Android/iOS/鸿蒙/Flutter)SDK 与示例位于仓库根目录,配合 SDK 集成引导.docx 使用
需要样机、完整协议资料或定制服务(如云端转写对接),可扫描下方二维码联系安徽声云:
【免费下载链接】sonicloud_opensdk声云录音卡 Recorder 是一套面向开发者和行业客户的智能录音硬件接入方案。 项目以录音卡片硬件为核心,开放 BLE 协议 SDK 及 Android、iOS、鸿蒙、Flutter 接入示例,同时提供 Windows/macOS 桌面端 Demo,支持设备连接、录音控制、实时音频、文件传输、OTA 升级和语音转写等能力,帮助开发者快速将录音硬件接入自己的 App、桌面软件或行业系统。 如需获取硬件规格、样机、完整协议、SDK 资料或定制服务,请联系安徽声云项目地址: https://gitcode.com/gh_mirrors/recorder24/sonicloud_opensdk
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考