【免费下载链接】speech-swift
AI speech toolkit for Apple Silicon — ASR, TTS, speech-to-speech, VAD, and diarization powered by MLX and CoreML
speech-swift 是一个运行在 Apple Silicon 上的本地语音 AI 工具包,内置的speech命令行工具可以让你一行命令完成语音转文字(ASR)、语音合成(TTS)、语音翻译等任务,全程离线、无需 API Key、数据不出设备。本文按使用场景整理它的 29 条子命令清单,并给出最常用的参数速查。
为什么选择 speech-swift CLI
- ⚡全本地推理:基于 MLX 与 CoreML(Apple 神经网络引擎),Mac 与 iPhone 均可运行
- 🎙️一条命令一个任务:转写、合成、翻译、降噪、说话人分离等能力全部拆成独立子命令
- 🧩多引擎可切换:同一个
transcribe命令可在 Qwen3-ASR、Whisper、Cohere、Voxtral、MOSS 等后端之间切换 - 📦一键安装:Homebrew 直接
brew install speech,也可用 Swift Package Manager 源码构建
安装只需一步(需原生 ARM 版 Homebrew,macOS 15+):
brew install speech也可以从源码构建(会同时编译 MLX Metal 着色器库):
git clone https://gitcode.com/gh_mirrors/sp/speech-swift cd speech-swift && make build构建细节见 docs/building.md。
语音转文字:transcribe / transcribe-batch / align
最常用的三条 ASR 命令,默认引擎是 Qwen3-ASR(52 种语言):
speech transcribe recording.wav # 默认 Qwen3-ASR speech transcribe recording.wav --engine cohere # 换用 Cohere Transcribe 2B speech transcribe recording.wav --engine moss --backend mlx speech transcribe meeting.wav --language zh --context "Project: Foo, participants: Alice, Bob"实用参数(源码:Sources/AudioCLILib/TranscribeCommand.swift):
| 参数 | 作用 |
|---|---|
--engine | 切换 ASR 后端:qwen3/cohere/voxtral/moss/parakeet/nemotron/omnilingual/whisper |
--model | 模型规格,如0.6B、1.7B、turbo(Whisper) |
--language | 语言提示(可选,可提升小语种准确率) |
--context | 上下文偏置,改善人名/专有名词识别 |
--stream --partial | 流式转写并输出中间结果(配合 VAD) |
批量转写与词级对齐:
speech transcribe-batch ./wav_dir/ # 整个目录转写,模型只加载一次 speech align talk.wav # 音频+文本 → 词级时间戳语音合成:speak / kokoro / csm / vibevoice
speak是多引擎 TTS 入口,支持 Qwen3-TTS、CosyVoice、VoxCPM2、F5-TTS、Higgs 等 9 种引擎:
speech speak "Hello world" # 默认 Qwen3-TTS,输出 output.wav speech speak "你好" -o hello.wav --language chinese speech speak "Read the poem" --voice-sample ref.wav # 参考音频克隆音色| 参数 | 作用 |
|---|---|
--engine | TTS 后端:qwen3(默认)/cosyvoice/voxcpm2/f5/higgs/magpie等 |
--voice-sample | 提供参考音频做零样本声音克隆 |
--list-speakers | 列出可用说话人 |
--play | 合成后直接播放,而不只存文件 |
更轻量的替代命令(源码见 Sources/AudioCLILib/SpeakCommand.swift):
speech kokoro "Good morning" --voice af_heart --language en # Kokoro-82M,CoreML 神经引擎 speech csm "Nice to meet you" --ref-audio voice.wav --ref-text "reference transcript" # 对话式 CSM + 克隆 speech vibevoice "chapter text" # 长文/多说话人 TTS,最长 90 分钟 speech qwen3-tts-coreml "Hi" # Qwen3-TTS 的 CoreML 版翻译:translate(文本)与 audio-translate(语音)
文本翻译基于 MADLAD-400,覆盖 400+ 语言,且支持管道衔接转写结果(源码:Sources/AudioCLILib/TranslateCommand.swift):
speech translate "Hello, how are you?" --to es speech transcribe talk.wav | speech translate --to zh # 转写 + 翻译一条管道搞定语音到语音翻译(Hibiki Zero-3B,FR/ES/PT/DE → EN,流式):
speech audio-translate interview_fr.wav语音对话:respond 与 voice-chat
speech respond --input question.wav --transcript # PersonaPlex 7B 全双工语音问答 speech voice-chat # Nemotron VoiceChat 11B 终端语音助手VAD、说话人与唤醒:音频理解的辅助命令
| 命令 | 一句话功能 |
|---|---|
speech vad audio.wav | 检测语音片段(Silero 等 VAD) |
speech vad-stream | 流式 VAD(32ms 分块,适合实时场景) |
speech turn audio.wav | 判断这句话是否说完(Smart Turn v3.2,端点检测) |
speech diarize meeting.wav --engine sortformer | 说话人分离:谁在什么时候说话 |
speech embed-speaker voice.wav | 提取说话人声纹嵌入(WeSpeaker/ReDimNet2/CAM++) |
speech wake audio.wav | 唤醒词/关键词检测(KWS Zipformer) |
speech language-id audio.wav | 识别音频里的语种(107 种语言) |
示例(说话人分离引擎可选pyannote/sortformer/community1/nemotron3,见 Sources/AudioCLILib/DiarizeCommand.swift):
speech diarize meeting.wav --engine sortformer --sortformer-variant streaming音频增强与生成:denoise / restore / upsample / separate / compose
speech denoise noisy.wav # DeepFilterNet3 降噪(CoreML 默认) speech restore echo.wav # Sidon 降噪 + 去混响,48kHz 输出 speech upsample low.wav # FlashSR 音频超分辨率到 48kHz speech separate song.wav # 音乐分离:人声/鼓/贝斯/其他 4 个 stem speech compose "lo-fi jazz rain" # 文本生成音乐(Stable Audio 3 默认,也可 MAGNeT)文本理解:gliner 与 clef
speech gliner classify "Remind me to call Dad at six PM." --labels create_reminder,send_message,other speech gliner extract "Call Alice" --labels person,city speech clef decide request.json # 从允许的候选答案中本地决策(Clef-flash)speech 命令完整清单速查表
| 分组 | 命令 | 功能 |
|---|---|---|
| 转写 | transcribe | 语音转文字(多引擎) |
| 转写 | transcribe-batch | 目录批量转写 |
| 对齐 | align | 词级时间戳对齐 |
| 合成 | speak | 多引擎 TTS + 声音克隆 |
| 合成 | kokoro/qwen3-tts-coreml/csm/vibevoice | 轻量/专用 TTS 后端 |
| 翻译 | translate | 文本翻译(400+ 语言) |
| 翻译 | audio-translate | 语音→语音流式翻译 |
| 对话 | respond/voice-chat | 全双工语音问答 |
| VAD | vad/vad-stream/turn | 语音活动检测与端点检测 |
| 说话人 | diarize/embed-speaker | 说话人分离与声纹嵌入 |
| 唤醒 | wake | 唤醒词检测 |
| 识别 | language-id | 语种识别 |
| 增强 | denoise/restore/upsample | 降噪、修复、超分 |
| 生成 | separate/compose/avatar-motion | 音源分离、音乐生成、面部动画系数 |
| 文本 | gliner/clef | 本地分类、实体抽取与决策 |
所有子命令定义集中注册在 Sources/AudioCLILib/AudioCLI.swift,每条命令一个独立 Swift 文件,阅读源码即可掌握全部参数。
常见问题(FAQ)
Q:运行报Failed to load the default metallib?A:GPU 推理依赖 MLX Metal 着色器库,从源码构建时请使用make build而不是裸swift build,构建脚本会自动生成mlx.metallib。
Q:模型要手动下载吗?A:不需要。首次运行对应命令时会自动从 Hugging Face 下载并缓存模型(带进度条),之后离线复用。
Q:如何选 ASR 引擎?A:追求中文与多语言质量用默认qwen3;追求 iPhone 上极致速度选parakeet或whisper(CoreML 神经引擎);小语种覆盖最广选omnilingual(1,672 种语言)。
Q:命令支持管道吗?A:支持。如speech transcribe x.wav | speech translate --to es,转写结果可直接作为翻译输入。
掌握这份清单后,从录音转写、语音合成到说话人分析,Apple Silicon 上的本地语音工作流都可以用一行命令完成——把speech --help当作日常速查,就是最直接的 CLI 参考手册。
【免费下载链接】speech-swift
AI speech toolkit for Apple Silicon — ASR, TTS, speech-to-speech, VAD, and diarization powered by MLX and CoreML
相关推荐
PaddleSpeech 命令行工具全指南:一行命令玩转语音识别、合成、声纹与翻译
PaddleSpeech 命令行工具全指南:一行命令玩转语音识别、合成、声纹与翻译 paddlespeech.cli 是 PaddleSpeech 提供的命令行
人工智能语音音频PaddleSpeech 语音合成(TTS)Demo 实战:一条命令与几行 Python 从文本生成语音
PaddleSpeech 语音合成(TTS)Demo 实战:一条命令与几行 Python 从文本生成语音 语音合成(Text to Speech, TTS)是将
人工智能语音音频NLP媒体生成PaddleSpeech 命令行工具实战指南:一行命令调用语音分类、识别、翻译与合成能力
PaddleSpeech 命令行工具实战指南:一行命令调用语音分类、识别、翻译与合成能力 PaddleSpeech 的 paddlespeech.cli 模块提
人工智能语音音频NLP媒体生成
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考