Will's AI Lab
Blog
AI LearningAI PerspectivesCasesTimelineAbout
中文日本語EN
中文日本語EN

© 2026 Will AI Lab. All rights reserved.

Powered by Next.js & AI

Sites

Aboutfuluckai.comFuluck Cattery

Social Links

Instagram@fuluck_catteryGitHub@konayuki56XiaohongshuOsaka Cattery Diary
HomeBlogAI PerspectivesTimeline
Blog
Apple Silicon Local Voice AI: MLX TTS + Whisper in Practice
🎙
播客导读

Listen to this article

AI LearningOriginal

Apple Silicon Local Voice AI: MLX TTS + Whisper in Practice

WillMarch 27, 2026About 1 min read

为什么选 MLX?

用苹果设备就要用苹果生态。MLX 是 Apple 专门为 Apple Silicon 设计的机器学习框架,直接调用 Metal GPU 和 Neural Engine,而不是走通用的 PyTorch CPU 路径。

对比实测:

指标 PyTorch MPS MLX 提升
生成16秒音频 ~180秒 37.7秒 5倍快
内存自动释放 ❌ ✅ 10分钟 自动化
Apple Silicon加速 ❌ ✅ Metal GPU 原生
费用 免费 免费 持平

场景一:声音克隆(日语内容)

使用 Qwen3-TTS-12Hz-1.7B-Base 的 ICL 能力,3-10 秒参考音频就能克隆声音:

bash
source ~/qwen3-tts-env/bin/activate

python3 -m mlx_audio.tts.generate \
  --model Qwen/Qwen3-TTS-12Hz-1.7B-Base \
  --text "こんにちは、今日もいい天気ですね。" \
  --ref_audio ~/qwen3-tts-models/voice_clone/ref_01.wav \
  --ref_text "パパ、ママ、おはよう。きょうはおそとであそびたいな。おひさまキラキラしてるよ。" \
  --output_path ~/Desktop/ \
  --file_prefix output \
  --audio_format wav

场景二:VoiceDesign(中文感情丰富)

用自然语言指令控制音色风格,不需要参考音频:

bash
python3 -m mlx_audio.tts.generate \
  --model Qwen/Qwen3-TTS-12Hz-1.7B-VoiceDesign \
  --text "嘿!今天来聊个超有意思的事~" \
  --instruct "活泼元气的年轻女生,带一点俏皮,像熟人分享新鲜事,语速稍快但自然" \
  --output_path ~/Desktop/ \
  --file_prefix output \
  --audio_format wav

长音频:分段 + 交叉淡入淡出

MLX TTS 单次约 30 秒上限,超出需分段。拼接关键:不能用 `ffmpeg -f concat` 硬切,要用 acrossfade 交叉淡入淡出,否则断裂感明显。

bash
# 两段 crossfade 拼接(0.3秒过渡)
ffmpeg -y -i seg1.wav -i seg2.wav \
  -filter_complex "[0][1]acrossfade=d=0.3:c1=tri:c2=tri[out]" \
  -map "[out]" output.wav

多段:两两迭代合并,每次 0.3 秒交叉淡入淡出。


MLX Whisper 语音识别

本地识别,音频不出门,19 秒音频只需 5.3 秒:

bash
pip install mlx-whisper

import mlx_whisper
result = mlx_whisper.transcribe(
    "audio.wav",
    path_or_hf_repo="mlx-community/whisper-large-v3-turbo"
)
print(result["text"])

音色选择策略

内容 方案 模型
日语 成希声音克隆 1.7B-Base + ref_audio
中文感情丰富 VoiceDesign 1.7B-VoiceDesign
博客导读(高质量) MiniMax API speech-2.8-hd
草稿预览 Edge TTS zh-CN-XiaoxiaoNeural

踩坑记录

  1. transformers 版本冲突:qwen-tts 需要 4.57.3,mlx-audio 需要 5.x,必须分开 venv
  2. 文件名有 `_000` 后缀:生成文件自动加 _000.wav,用 glob 匹配而非硬写文件名
  3. 拼接用 crossfade:-f concat 硬拼断裂明显,用 acrossfade=d=0.3 过渡自然
  4. tokenizer 警告可忽略:HuggingFace mistral regex 兼容性警告,不影响生成质量

总结

既然用苹果设备,就要用苹果生态。MLX 是 Apple Silicon 应有的玩法:

  • 速度:5 倍提升
  • 隐私:音频不离开设备
  • 成本:零 API 费
  • 可控:自定义音色风格
Will's Take

Running voice AI with Apple's own MLX framework—5x faster and completely free. This is how Apple Silicon should be used.


PreviousGitHub Trending: Week 4 of March 2026 — 5 Projects Deep Dive | Dual AI PerspectiveNextSwarm Engine v6.1: From Monolith to Scene-Based Intelligent Orchestration
Blog

评论

加载中...

发表评论

0/1000

Table of Contents

  • 为什么选 MLX?
  • 场景一:声音克隆(日语内容)
  • 场景二:VoiceDesign(中文感情丰富)
  • 长音频:分段 + 交叉淡入淡出
  • MLX Whisper 语音识别
  • 音色选择策略
  • 踩坑记录
  • 总结