macOS Local Voice

🎙️ macOS 原生离线语音,零 API 密钥

macOS 原生本地语音能力,无需 API 密钥或联网,支持多语言离线语音转文字和文字转语音,Apple Silicon 体验更佳。

收藏
6.5k
安装
3.1k
版本
1.0.0
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

macos-local-voice 是一款完全基于 macOS 原生框架的本地语音处理工具,整合 Apple Speech.framework(通过 yap CLI)实现离线语音识别,并通过 say 命令配合 ffmpeg 实现文本转语音。无需配置任何 API 密钥,所有计算均在设备端完成。

Speech-to-Text (STT)

  • 调用 stt.mjs 脚本将音频文件转录为文本
  • 支持 ogg、m4a、mp3、wav 等常见格式
  • 可通过 locale 参数指定语言(如 zh_CNen_USja_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 用户构建语音工作流的首选工具。

macOS Local Voice 内容

scripts文件夹
手动下载zip · 8.1 kB
stt.mjstext/javascript
请选择文件