macOS 原生本地语音能力,无需 API 密钥或联网,支持多语言离线语音转文字和文字转语音,Apple Silicon 体验更佳。
说明:
## 核心用法
**macos-local-voice** 是一款完全基于 macOS 原生框架的本地语音处理工具,整合 Apple Speech.framework(通过 `yap` CLI)实现离线语音识别,并通过 `say` 命令配合 ffmpeg 实现文本转语音。无需配置任何 API 密钥,所有计算均在设备端完成。
### Speech-to-Text (STT)
– 调用 `stt.mjs` 脚本将音频文件转录为文本
– 支持 ogg、m4a、mp3、wav 等常见格式
– 可通过 locale 参数指定语言(如 `zh_CN`、`en_US`、`ja_JP` 等)
– 支持 20+ 种语言,自动检测或手动指定
### Text-to-Speech (TTS)
– 调用 `tts.mjs` 脚本将文本转为音频文件
– 智能选声:根据文本语言自动匹配最佳语音
– 三级音质可选:Compact(低质)、Enhanced(中质)、Premium(高质)
– Premium 语音(如 `Yue (Premium)`、`Ava (Premium)`)需用户手动下载
– 若 ffmpeg 可用,自动输出 ogg/opus 格式(适合即时通讯);否则输出 aiff
### 语音管理
– `voices.mjs list`:列出可用语音
– `voices.mjs check`:验证语音是否已下载(关键步骤,因 `say` 静默降级)
– `voices.mjs best`:获取某语言的最佳语音
## 显著优点
| 特性 | 说明 |
|——|——|
| **零配置** | 无需 API 密钥、无需注册账号 |
| **完全离线** | 数据不上传云端,隐私安全 |
| **原生集成** | 深度调用 Apple 优化过的神经网络引擎,Apple Silicon 性能优异 |
| **多语言覆盖** | 支持中文、英文、日语、韩语、法语、德语、西班牙语等 20+ 语言 |
| **格式灵活** | 自动输出优化格式,适配消息平台 |
| **成本为零** | 无按量计费,无限次使用 |
## 潜在缺点与局限性
– **平台锁定**:仅支持 macOS,Intel Mac 可用但体验逊于 Apple Silicon
– **Premium 语音需手动配置**:高质量语音需用户前往「系统设置 → 辅助功能 → 朗读内容」下载
– **无 Siri 语音**:无法使用 Siri 专属音色
– **静默降级风险**:`say` 命令在语音不可用时自动回退默认音色,必须通过 `voices.mjs check` 前置校验
– **外部依赖**:需单独安装 `yap`(brew)和可选的 `ffmpeg`
– **无实时流式识别**:基于文件处理,非实时对话模式
## 适合人群
– 注重隐私、不愿上传语音数据的 macOS 用户
– 需要离线工作环境(如无网络、内网环境)的开发者
– 希望零成本使用多语言 TTS/STT 功能的自动化工作流构建者
– 中文用户特别推荐:支持 `Yue (Premium)` 等高质量粤语、普通话语音
## 常规风险
| 风险类别 | 描述 | 缓解措施 |
|———-|——|———-|
| **依赖可用性** | `yap` 需通过第三方 tap 安装 | 使用 `brew install finnvoor/tools/yap`,关注维护状态 |
| **语音下载陷阱** | 用户误以为 Premium 语音可用,实际未下载 | 强制先执行 `voices.mjs check` |
| **格式兼容性** | 部分平台可能不支持 aiff | 确保 ffmpeg 安装以获取 opus 输出 |
| **性能瓶颈** | Intel Mac 大文件处理较慢 | 建议 Apple Silicon 设备 |
| **语言检测误差** | 混合语言文本可能选错语音 | 显式指定 `locale` 参数 |
## 总结
macos-local-voice 是 macOS 生态中隐私友好、零成本的语音处理最优解,特别适合自动化脚本和隐私敏感场景。虽然受限于平台且需手动管理 Premium 语音资源,但其原生性能和完全离线的特性,使其成为 Apple 用户构建语音工作流的首选工具。







